loft-sh / loft

Namespace & Virtual Cluster Manager for Kubernetes - Lightweight Virtual Clusters, Self-Service Provisioning for Engineers and 70% Cost Savings with Sleep Mode
https://loft.sh/docs/introduction
Other
722 stars 64 forks source link

Impossible to edit installed apps #228

Closed withinboredom closed 1 year ago

withinboredom commented 1 year ago

In V2, after an app was installed (or before) the values.yaml file could be edited. Currently there is no way to update an installed App's configuration.

Real World example:

Ingress Nginx was installed with Loft 1.x? and has undergone many customizations over the last year and a half. It appears another one is needed for vclusters in 3.x:

enable-ssl-passthrough: "true"

When clicking 'edit' on the installed App, I get a not-so-useful panel with no options to configure (and a scary "update" button that will do who-knows-what), but the handy readme is on the left. When I go to view the Yaml, I get a familiar-looking way to update the values ... but the readme is on the not-so-useful panel so I'm basically flying blind. So... after memorizing the readme, I can swiftly make a change.

However, when I try to save the settings, I get an error:

It'd be fantastic to allow editing Apps again. If this will no longer be possible, the utility of using Loft drastically decreases.

withinboredom commented 1 year ago

I figured I would update the template. Some bugs:

  1. You can't scroll to the actual bottom. I dumped in a 2k line of values, and I wasn't able to view the last 100 lines or so. I had to use an external editor.
  2. It's required to memorize the readme of them helm chart to make meaningful changes (This is why templates were never updated in the first place).
  3. It takes a TON of clicks to navigate from saving the template, to project overview, to the space overview, to the app overview, to the app and update, then back again if something wasn't right the first time. Can be extremely frustrating -- especially since the handy bookmark feature is gone.
FabianKramm commented 1 year ago

Hey @withinboredom, thanks for reporting this issue ! If you want the values of an app to be editable, you can make an app parameter for the app where you can enter the values directly when deploying the app. Here is an example:

Add the parameter in the app:

image

Populate the helm values from the parameter:

image

Deploy the app with custom helm values:

image

Hope that helps!

withinboredom commented 1 year ago

Clever! I like it!