#engine container thrashing

1 messages · Page 1 of 1 (latest)

untold mural
#

I finally figured out what was causing some weird behavior

  • dagger CLI @ v0.8.0
  • dagger Go @ v0.8.0
  • dagger JS @ v0.6.4

Everytime I ran my JS workflow, the engine would get replaced by an older version

#

Not sure what expected behavior should be here, but more notice would be nice if replacing the engine container

round gazelle
#

does it happen the other way around too? Run v0.6.4 and then v0.8.0 afterwards. IIRC we added some version compatbility checks for this recently.

rose gulch
#

The behavior here is expected; our logic for this is currently very primitive + dumb. When an SDK/CLI needs to connect to a dagger engine and none has been specified by the user (currently via _EXPERIMENTAL_DAGGER_RUNNER_HOST, though that's to be improved soon #general message), then it automatically starts one in a local docker installation.

If it finds that there are other engines already running not at the version corresponding to the SDK/CLI, then it cleans up the old ones. This is what results in the thrashing currently. It's basically to prevent us from just leaking more and more engines forever.

The smarter solution will come from a combination of #general message and the solution described here: https://github.com/dagger/dagger/issues/5484#issuecomment-1646364201

Discord

Discord is the easiest way to communicate over voice, video, and text. Chat, hang out, and stay close with your friends and communities.

GitHub

Overview I want to start a discussion on an important aspect of Dagger's architecture: whether to make the engine stateful or stateless. This is a complex topic with important ramifications, th...

#

cc @lucid matrix