package main import ( "fmt" "log" "os" "a301_server/internal/auth" "a301_server/pkg/config" "a301_server/pkg/database" "golang.org/x/crypto/bcrypt" ) func main() { config.Load() if err := database.ConnectMySQL(); err != nil { log.Fatalf("MySQL 연결 실패: %v", err) } username := getArg(1, "admin") password := getArg(2, "admin1234") hash, err := bcrypt.GenerateFromPassword([]byte(password), bcrypt.DefaultCost) if err != nil { log.Fatalf("비밀번호 해시 실패: %v", err) } user := auth.User{ Username: username, PasswordHash: string(hash), Role: auth.RoleAdmin, } repo := auth.NewRepository(database.DB) if err := repo.Create(&user); err != nil { log.Fatalf("관리자 계정 생성 실패: %v", err) } fmt.Printf("관리자 계정 생성 완료\n 아이디: %s\n 비밀번호: %s\n", username, password) } func getArg(index int, fallback string) string { if len(os.Args) > index { return os.Args[index] } return fallback }