@@ -35,6 +35,8 @@ UI Options
35
35
36
36
-authenticate: Exchange your Nomad ACL token for a one-time token in the
37
37
web UI, if ACLs are enabled.
38
+
39
+ -show-url: Show the Nomad UI URL instead of opening with the default browser.
38
40
`
39
41
40
42
return strings .TrimSpace (helpText )
@@ -82,10 +84,12 @@ func (c *UiCommand) Name() string { return "ui" }
82
84
83
85
func (c * UiCommand ) Run (args []string ) int {
84
86
var authenticate bool
87
+ var showUrl bool
85
88
86
89
flags := c .Meta .FlagSet (c .Name (), FlagSetClient )
87
90
flags .Usage = func () { c .Ui .Output (c .Help ()) }
88
91
flags .BoolVar (& authenticate , "authenticate" , false , "" )
92
+ flags .BoolVar (& showUrl , "show-url" , false , "" )
89
93
90
94
if err := flags .Parse (args ); err != nil {
91
95
return 1
@@ -178,17 +182,24 @@ func (c *UiCommand) Run(args []string) int {
178
182
}
179
183
}
180
184
185
+ var output string
181
186
if authenticate && ottSecret != "" {
182
- c . Ui . Output ( fmt .Sprintf ("Opening URL %q with one-time token" , url .String () ))
187
+ output = fmt .Sprintf ("Opening URL %q with one-time token" , url .String ())
183
188
url .RawQuery = fmt .Sprintf ("ott=%s" , ottSecret )
184
189
} else {
185
- c .Ui .Output (fmt .Sprintf ("Opening URL %q" , url .String ()))
190
+ output = fmt .Sprintf ("Opening URL %q" , url .String ())
191
+ }
192
+
193
+ if showUrl {
194
+ c .Ui .Output (fmt .Sprintf ("URL for web UI: %s" , url .String ()))
195
+ return 0
186
196
}
197
+
198
+ c .Ui .Output (output )
187
199
if err := open .Start (url .String ()); err != nil {
188
200
c .Ui .Error (fmt .Sprintf ("Error opening URL: %s" , err ))
189
201
return 1
190
202
}
191
-
192
203
return 0
193
204
}
194
205
0 commit comments