From 813dc6276cc0731f4187f9632e67b3ee020a7d5f Mon Sep 17 00:00:00 2001 From: Hector Espert Date: Fri, 16 Aug 2024 23:57:13 +0200 Subject: [PATCH] Default credentials --- controller/daemon/api.go | 14 ++++---------- controller/utils/auth.go | 8 ++++++++ 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/controller/daemon/api.go b/controller/daemon/api.go index a44664281..8b9268fb7 100644 --- a/controller/daemon/api.go +++ b/controller/daemon/api.go @@ -11,21 +11,15 @@ import ( "github.com/reef-pi/reef-pi/controller/utils" ) -var DefaultCredentials = utils.Credentials{ - User: "reef-pi", - Password: "reef-pi", -} - func (r *ReefPi) API() error { - creds, err := r.a.GetCredentials() + _, err := r.a.GetCredentials() if err != nil { log.Println("ERROR: Failed to load credentials. Error", err) - if err := r.store.Update(Bucket, "credentials", DefaultCredentials); err != nil { + if err := r.a.DefaultCredentials(); err != nil { return err } - creds = DefaultCredentials } - err, router := startAPIServer(r.settings.Address, creds, r.settings.HTTPS) + err, router := startAPIServer(r.settings.Address, r.settings.HTTPS) if err != nil { return err } @@ -226,7 +220,7 @@ func (r *ReefPi) AuthenticatedAPI(router *mux.Router) { } } -func startAPIServer(address string, creds utils.Credentials, https bool) (error, *mux.Router) { +func startAPIServer(address string, https bool) (error, *mux.Router) { assets := http.FileServer(http.Dir("ui/assets")) http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { http.ServeFile(w, r, "ui/home.html") diff --git a/controller/utils/auth.go b/controller/utils/auth.go index faf8eb124..cd63cebd0 100644 --- a/controller/utils/auth.go +++ b/controller/utils/auth.go @@ -64,6 +64,7 @@ type Auth interface { UpdateCredentials(http.ResponseWriter, *http.Request) Me(http.ResponseWriter, *http.Request) Authenticate(http.HandlerFunc) http.HandlerFunc + DefaultCredentials() error } type auth struct { @@ -155,3 +156,10 @@ func (a *auth) UpdateCredentials(w http.ResponseWriter, req *http.Request) { } JSONUpdateResponse(&credentials, fn, w, req) } + +func (a *auth) DefaultCredentials() error { + return a.credentialsManager.Update(Credentials{ + User: "reef-pi", + Password: "reef-pi", + }) +}