krumIO / krum-rancher-extensions

Collection of Developer and Platform focused extensions for SUSE Rancher
https://www.krum.io/
0 stars 1 forks source link

feat: add app launcher #3

Closed cjshearer closed 11 months ago

cjshearer commented 11 months ago

feat: add custom page for app launcher

This commit adds the necessary configuration to display a page for a top-level product and contains an example for fetching data from the management API.

SUSE1-43 #resolve

feat: add k8s as app launcher cards

This commit adds cards for each service to the app launcher page, where the cards are grouped by cluster.

Each card displays the name, namespace, and version of the service, along with a button for launching endpoints the service provides.

SUSE1-42 #resolve SUSE1-32 #resolve SUSE1-27 #resolve

refactor: add app launcher card prop types

This commit adds support for more complex prop types in the AppLauncherCard by enabling script setup and lang="ts" in our Vue components. It also shifts the responsibility of extracting values from a k8s Service from the app-launcher page to the AppLauncherCard.

feat: add proxy URLs to app launcher card

This commit adds the initial proxy URL building to the app launcher cards, which makes most services with a web interface accessible from the app launcher page.

Further refinement is likely to be needed. Notable things to to consider:

SUSE1-39 #resolve

fix: workaround incorrect ButtonDropdown z-index

This commit adds z-index: 1 to the cluster-header to ensure it stays above the ButtonDropdown in the AppLancherCard page.

This shouldn't be necessary, since the position:sticky in the app-launcher page's header should make the header appear above its siblings, but the ButtonDropdown element seems to have the wrong z-index by default, so we just force it to be below the header. See the following slack conversation for previous discussion on this: https://krumware.slack.com/archives/C053W936JAZ/p1691418985551309?thread_ts=1691099848.592889&cid=C053W936JAZ