From 8ed57a047d56bfad8a105205c706ae0d68f532e8 Mon Sep 17 00:00:00 2001 From: Seth Etter Date: Sun, 23 Feb 2025 10:05:46 -0600 Subject: [PATCH] make admin accounts optional --- pkg/config/config.go | 4 ++-- pkg/server/server.go | 10 +++++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/pkg/config/config.go b/pkg/config/config.go index 5f8e73f..c49a8db 100644 --- a/pkg/config/config.go +++ b/pkg/config/config.go @@ -16,8 +16,8 @@ type Config struct { Email *EmailConfig Twitter *TwitterConfig SlackHook string `envconfig:"SLACK_HOOK"` - AdminUser string `envconfig:"ADMIN_USER" required:"true"` - AdminPassword string `envconfig:"ADMIN_PASSWORD" require:"true"` + AdminUser string `envconfig:"ADMIN_USER"` + AdminPassword string `envconfig:"ADMIN_PASSWORD"` } type EmailConfig struct { diff --git a/pkg/server/server.go b/pkg/server/server.go index 18e8dcf..3ed0d81 100644 --- a/pkg/server/server.go +++ b/pkg/server/server.go @@ -82,9 +82,13 @@ func NewServer(c *ServerConfig) (http.Server, error) { // Admin routes admin := router.Group("/admin") - admin.Use(gin.BasicAuth(gin.Accounts{ - c.Config.AdminUser: c.Config.AdminPassword, - })) + + accounts := gin.Accounts{} + if c.Config.AdminUser != "" { + accounts[c.Config.AdminUser] = c.Config.AdminPassword + } + + admin.Use(gin.BasicAuth(accounts)) { admin.GET("", ctrl.AdminIndex) admin.GET("/jobs/:id/edit", ctrl.EditJob)