diff options
Diffstat (limited to 'pkg/janitor/janitor.go')
| -rw-r--r-- | pkg/janitor/janitor.go | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/pkg/janitor/janitor.go b/pkg/janitor/janitor.go new file mode 100644 index 0000000..b640eed --- /dev/null +++ b/pkg/janitor/janitor.go @@ -0,0 +1,26 @@ +package janitor + +import ( + "context" + "log/slog" + "time" + + "git.leonardobishop.net/instancer/pkg/deployer" +) + +func StartJanitor(ctx context.Context, deployer *deployer.DockerDeployer) { + ticker := time.NewTicker(1 * time.Minute) + defer ticker.Stop() + + for { + select { + case <-ticker.C: + err := deployer.RemoveExpiredResources(ctx) + if err != nil { + slog.Error("error occurred when removing expired resources", "cause", err) + } + case <-ctx.Done(): + return + } + } +} |
