Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom@curii.com>
PostgreSQLPassword string
Login string
TLS string
PostgreSQLPassword string
Login string
TLS string
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.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 {
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
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 == "" {
} else if initcmd.Login == "pam" {
initcmd.LoginPAM = true
} else if initcmd.Login == "" {
Enable: true
Users:
admin:
Enable: true
Users:
admin:
- Email: admin@example.com
+ Email: {{printf "%q" .AdminEmail}}
Password: admin
{{else if .LoginGoogle}}
Login:
Password: admin
{{else if .LoginGoogle}}
Login:
ClientID: {{printf "%q" .LoginGoogleClientID}}
ClientSecret: {{printf "%q" .LoginGoogleClientSecret}}
{{end}}
ClientID: {{printf "%q" .LoginGoogleClientID}}
ClientSecret: {{printf "%q" .LoginGoogleClientSecret}}
{{end}}
- AutoAdminUserWithEmail: admin@example.com
- {{end}}
+ AutoAdminUserWithEmail: {{printf "%q" .AdminEmail}}
`)
if err != nil {
return 1
`)
if err != nil {
return 1