summaryrefslogtreecommitdiffstats
path: root/pkg/janitor
diff options
context:
space:
mode:
authorLeonardo Bishop <me@leonardobishop.net>2026-01-07 23:39:53 +0000
committerLeonardo Bishop <me@leonardobishop.net>2026-01-07 23:39:53 +0000
commit03cd6bdfbd473dba3f3dc50a1b15e389aac5bc70 (patch)
tree5fea2b1840e298aaab953add749fb9226bd4a710 /pkg/janitor
Initial commit
Diffstat (limited to 'pkg/janitor')
-rw-r--r--pkg/janitor/janitor.go26
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
+ }
+ }
+}