mirror of
https://github.com/fosrl/pangolin.git
synced 2025-08-16 15:32:19 +02:00
Seperate ask for base domain and dashboard domain
This commit is contained in:
parent
832d7e5d6d
commit
484a099ee3
2 changed files with 12 additions and 6 deletions
|
@ -1,6 +1,6 @@
|
||||||
app:
|
app:
|
||||||
dashboard_url: https://{{.Domain}}
|
dashboard_url: https://{{.DashboardDomain}}
|
||||||
base_domain: {{.Domain}}
|
base_domain: {{.BaseDomain}}
|
||||||
log_level: info
|
log_level: info
|
||||||
save_logs: false
|
save_logs: false
|
||||||
|
|
||||||
|
|
|
@ -18,7 +18,8 @@ import (
|
||||||
var configFiles embed.FS
|
var configFiles embed.FS
|
||||||
|
|
||||||
type Config struct {
|
type Config struct {
|
||||||
Domain string `yaml:"domain"`
|
BaseDomain string `yaml:"baseDomain"`
|
||||||
|
DashboardDomain string `yaml:"dashboardUrl"`
|
||||||
LetsEncryptEmail string `yaml:"letsEncryptEmail"`
|
LetsEncryptEmail string `yaml:"letsEncryptEmail"`
|
||||||
AdminUserEmail string `yaml:"adminUserEmail"`
|
AdminUserEmail string `yaml:"adminUserEmail"`
|
||||||
AdminUserPassword string `yaml:"adminUserPassword"`
|
AdminUserPassword string `yaml:"adminUserPassword"`
|
||||||
|
@ -102,12 +103,13 @@ func collectUserInput(reader *bufio.Reader) Config {
|
||||||
|
|
||||||
// Basic configuration
|
// Basic configuration
|
||||||
fmt.Println("\n=== Basic Configuration ===")
|
fmt.Println("\n=== Basic Configuration ===")
|
||||||
config.Domain = readString(reader, "Enter your domain name", "")
|
config.BaseDomain = readString(reader, "Enter your base domain (no subdomain e.g. example.com)", "")
|
||||||
|
config.DashboardDomain = readString(reader, "Enter the domain for the Pangolin dashboard (e.g. example.com OR proxy.example.com)", config.BaseDomain)
|
||||||
config.LetsEncryptEmail = readString(reader, "Enter email for Let's Encrypt certificates", "")
|
config.LetsEncryptEmail = readString(reader, "Enter email for Let's Encrypt certificates", "")
|
||||||
|
|
||||||
// Admin user configuration
|
// Admin user configuration
|
||||||
fmt.Println("\n=== Admin User Configuration ===")
|
fmt.Println("\n=== Admin User Configuration ===")
|
||||||
config.AdminUserEmail = readString(reader, "Enter admin user email", "admin@"+config.Domain)
|
config.AdminUserEmail = readString(reader, "Enter admin user email", "admin@"+config.BaseDomain)
|
||||||
for {
|
for {
|
||||||
config.AdminUserPassword = readString(reader, "Enter admin user password", "")
|
config.AdminUserPassword = readString(reader, "Enter admin user password", "")
|
||||||
if valid, message := validatePassword(config.AdminUserPassword); valid {
|
if valid, message := validatePassword(config.AdminUserPassword); valid {
|
||||||
|
@ -140,10 +142,14 @@ func collectUserInput(reader *bufio.Reader) Config {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Validate required fields
|
// Validate required fields
|
||||||
if config.Domain == "" {
|
if config.BaseDomain == "" {
|
||||||
fmt.Println("Error: Domain name is required")
|
fmt.Println("Error: Domain name is required")
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
|
if config.DashboardDomain == "" {
|
||||||
|
fmt.Println("Error: Dashboard Domain name is required")
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
if config.LetsEncryptEmail == "" {
|
if config.LetsEncryptEmail == "" {
|
||||||
fmt.Println("Error: Let's Encrypt email is required")
|
fmt.Println("Error: Let's Encrypt email is required")
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue