kurtosis-tech / kurtosis

A platform for packaging and launching ephemeral backend stacks with a focus on approachability for the average developer.
https://docs.kurtosistech.com/
Apache License 2.0
376 stars 53 forks source link

[FR]: Empty & reload enclave by watching SL script/package #162

Open mieubrisse opened 1 year ago

mieubrisse commented 1 year ago

Background and motivation

I'm iterating on the quickstart Starlark script. This involves a lot of "make a change, then kurtosis run, repeat". Pains:

Current behavior

  1. Make change to Starlark script
  2. Try a kurtosis run, which involves a ~3s enclave startup time before the SL even runs
  3. Fix errors or add more code
  4. Repeat

Desired behavior

I can tell Kurtosis to start watching a SL script or package. Any time I write a change, Kurtosis will empty out the enclave and redo everything as if I ran kurtosis run ....... I'll also need to be able to define parameters for this live-reloading, if my SL script or package is parameterized.

This will be extra useful when we have static port bindings, so that a user can set up static port bindings for an enclave + servicename + port ID, and the enclave ID won't keep changing under them.

How important is this feature or improvement to you?

Painful, the lack of this feature makes using Kurtosis frictionful.

mieubrisse commented 1 year ago

Related to idempotent runs (@gbouv ), and was also a request from Aptos