diff --git a/cmd/dbGarbageCollector/main.go b/cmd/dbGarbageCollector/main.go new file mode 100644 index 0000000000000000000000000000000000000000..5c5f9774357ad9ee1cdb5bd52fc906145416ca16 --- /dev/null +++ b/cmd/dbGarbageCollector/main.go @@ -0,0 +1,29 @@ +package main + +import ( + "log" + + "github.com/zachmann/mytoken/internal/config" + "github.com/zachmann/mytoken/internal/db" +) + +func main() { + config.Load() + if err := db.Connect(); err != nil { + log.Fatal(err) + } + deleteExpiredPollingCodes() + deleteExpiredAuthInfo() +} + +func deleteExpiredPollingCodes() { + if _, err := db.DB().Exec(`DELETE FROM PollingCodes WHERE expires_at < CURRENT_TIMESTAMP()`); err != nil { + log.Printf("%s", err) + } +} + +func deleteExpiredAuthInfo() { + if _, err := db.DB().Exec(`DELETE FROM AuthInfo WHERE expires_at < CURRENT_TIMESTAMP()`); err != nil { + log.Printf("%s", err) + } +} diff --git a/cmd/mytoken/main.go b/cmd/mytoken/main.go index 687e662d66e75f541497725d72444189256af331..4e6009ef3db4b4b3a02fba373661942d70648be6 100644 --- a/cmd/mytoken/main.go +++ b/cmd/mytoken/main.go @@ -3,7 +3,7 @@ package main import ( "github.com/zachmann/mytoken/internal/config" "github.com/zachmann/mytoken/internal/db" - "github.com/zachmann/mytoken/internal/endpoints/configuration" + configurationEndpoint "github.com/zachmann/mytoken/internal/endpoints/configuration" "github.com/zachmann/mytoken/internal/jws" "github.com/zachmann/mytoken/internal/oidc/authcode" "github.com/zachmann/mytoken/internal/server" @@ -11,10 +11,9 @@ import ( func main() { config.Load() - configuration.Init() + configurationEndpoint.Init() authcode.Init() - err := db.Connect() - if err != nil { + if err := db.Connect(); err != nil { panic(err) } jws.LoadKey()