mirror of
https://github.com/lordmathis/lemma.git
synced 2025-11-05 23:44:22 +00:00
Unify env var reading in backend
This commit is contained in:
@@ -39,7 +39,13 @@ func main() {
|
||||
|
||||
// Initialize user service
|
||||
userService := user.NewUserService(database, fs)
|
||||
if _, err := userService.SetupAdminUser(); err != nil {
|
||||
|
||||
adminEmail := os.Getenv("NOVAMD_ADMIN_EMAIL")
|
||||
adminPassword := os.Getenv("NOVAMD_ADMIN_PASSWORD")
|
||||
if adminEmail == "" || adminPassword == "" {
|
||||
log.Fatal("NOVAMD_ADMIN_EMAIL and NOVAMD_ADMIN_PASSWORD environment variables must be set")
|
||||
}
|
||||
if _, err := userService.SetupAdminUser(adminEmail, adminPassword); err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
||||
|
||||
@@ -3,7 +3,6 @@ package user
|
||||
import (
|
||||
"fmt"
|
||||
"log"
|
||||
"os"
|
||||
|
||||
"golang.org/x/crypto/bcrypt"
|
||||
|
||||
@@ -24,18 +23,13 @@ func NewUserService(database *db.DB, fs *filesystem.FileSystem) *UserService {
|
||||
}
|
||||
}
|
||||
|
||||
func (s *UserService) SetupAdminUser() (*models.User, error) {
|
||||
// Get admin email and password from environment variables
|
||||
adminEmail := os.Getenv("NOVAMD_ADMIN_EMAIL")
|
||||
adminPassword := os.Getenv("NOVAMD_ADMIN_PASSWORD")
|
||||
if adminEmail == "" || adminPassword == "" {
|
||||
return nil, fmt.Errorf("NOVAMD_ADMIN_EMAIL and NOVAMD_ADMIN_PASSWORD environment variables must be set")
|
||||
}
|
||||
|
||||
func (s *UserService) SetupAdminUser(adminEmail, adminPassword string) (*models.User, error) {
|
||||
// Check if admin user exists
|
||||
adminUser, err := s.DB.GetUserByEmail(adminEmail)
|
||||
if adminUser != nil {
|
||||
return adminUser, nil // Admin user already exists
|
||||
} else if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
// Hash the password
|
||||
|
||||
Reference in New Issue
Block a user