From 9e0d3f2112158dcd8323a1cd1ec4d749c3cc31be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maximilian=20Pa=C3=9F?= <22845248+mpass99@users.noreply.github.com> Date: Tue, 27 Dec 2022 15:05:45 +0100 Subject: [PATCH] Document the container updater mechanism. --- deploy/codeocean-terraform | 2 +- docs/nomad_usage.md | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/deploy/codeocean-terraform b/deploy/codeocean-terraform index b2e7989..cc3d365 160000 --- a/deploy/codeocean-terraform +++ b/deploy/codeocean-terraform @@ -1 +1 @@ -Subproject commit b2e7989e5a99cd8203be16e1010c89fcac5739c8 +Subproject commit cc3d365f84101bb730149f18a9c25dbd7b6a402e diff --git a/docs/nomad_usage.md b/docs/nomad_usage.md index 7cc2606..ead1d76 100644 --- a/docs/nomad_usage.md +++ b/docs/nomad_usage.md @@ -34,3 +34,11 @@ When a user requests a runner, a runner from this pool can be used. In the background, a new runner is created, thus replenishing the pool. By running in the background, the user does not have to wait as long as the runner needs to start. The implementation of this concept can be seen in [the Runner Manager](/internal/runner/manager.go). + +### Lifecycle + +The prewarming pool is initiated when a new environment is requested/created according to the requested prewarming pool size. + +Every change on the environment (resource constraints, prewarming pool size, network access) leads to the destruction of the environment including all used and idle runners (the prewarming pool). After that, the environment and its prewarming pool is re-created. + +Other causes of the destruction of the prewarming pool are the explicit deletion of the environment by using the API route and via the get environment route with the fetch flag and Nomad not having the corresponding template job.