PostgreSQLPassword string
Login string
TLS string
+ AdminEmail string
Start bool
LoginPAM bool
flags.StringVar(&initcmd.ClusterID, "cluster-id", "", "cluster `id`, like x1234 for a dev cluster")
flags.StringVar(&initcmd.Domain, "domain", hostname, "cluster public DNS `name`, like x1234.arvadosapi.com")
flags.StringVar(&initcmd.Login, "login", "", "login `backend`: test, pam, 'google {client-id} {client-secret}', or ''")
+ flags.StringVar(&initcmd.AdminEmail, "admin-email", "", "give admin privileges to user with given `email`")
flags.StringVar(&initcmd.TLS, "tls", "none", "tls certificate `source`: acme, auto, insecure, or none")
flags.BoolVar(&initcmd.Start, "start", true, "start systemd service after creating config")
if ok, code := cmd.ParseFlags(flags, prog, args, "", stderr); !ok {
initcmd.LoginGoogleClientSecret = fields[2]
} else if initcmd.Login == "test" {
initcmd.LoginTest = true
+ if initcmd.AdminEmail == "" {
+ initcmd.AdminEmail = "admin@example.com"
+ }
} else if initcmd.Login == "pam" {
initcmd.LoginPAM = true
} else if initcmd.Login == "" {
Enable: true
Users:
admin:
- Email: admin@example.com
+ Email: {{printf "%q" .AdminEmail}}
Password: admin
{{else if .LoginGoogle}}
Login:
ClientID: {{printf "%q" .LoginGoogleClientID}}
ClientSecret: {{printf "%q" .LoginGoogleClientSecret}}
{{end}}
- {{if .LoginTest}}
Users:
- AutoAdminUserWithEmail: admin@example.com
- {{end}}
+ AutoAdminUserWithEmail: {{printf "%q" .AdminEmail}}
`)
if err != nil {
return 1