summaryrefslogtreecommitdiffstats
path: root/pkg/janitor/janitor.go
blob: b640eed0ff4de75574c9ddad9b3446156c2e8df3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
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
		}
	}
}