From c8872948a4aee6fd2bf69d060ed5efc67d95790b Mon Sep 17 00:00:00 2001 From: Joe Doss Date: Tue, 11 Feb 2025 16:25:39 -0600 Subject: [PATCH] Add STEP_OPEN_BROWSER env var to skip opening a browser and just output the authURL. --- command/oauth/cmd.go | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/command/oauth/cmd.go b/command/oauth/cmd.go index 5651b27a..0fae06a8 100644 --- a/command/oauth/cmd.go +++ b/command/oauth/cmd.go @@ -784,18 +784,24 @@ func (o *oauth) DoLoopbackAuthorization() (*token, error) { return nil, err } - if err := exec.OpenInBrowser(authURL, o.browser); err != nil { - fmt.Fprintln(os.Stderr, "Cannot open a web browser on your platform.") - fmt.Fprintln(os.Stderr) - fmt.Fprintln(os.Stderr, "Open a local web browser and visit:") - fmt.Fprintln(os.Stderr) - fmt.Fprintln(os.Stderr, authURL) - fmt.Fprintln(os.Stderr) + skipBrowser := os.Getenv("STEP_OPEN_BROWSER") == "false" + + if !skipBrowser { + if err := exec.OpenInBrowser(authURL, o.browser); err != nil { + fmt.Fprintln(os.Stderr, "Cannot open a web browser on your platform.") + fmt.Fprintln(os.Stderr) + fmt.Fprintln(os.Stderr, "Open a local web browser and visit:") + fmt.Fprintln(os.Stderr) + fmt.Fprintln(os.Stderr, authURL) + fmt.Fprintln(os.Stderr) + } else { + fmt.Fprintln(os.Stderr, "Your default web browser has been opened to visit:") + fmt.Fprintln(os.Stderr) + fmt.Fprintln(os.Stderr, authURL) + fmt.Fprintln(os.Stderr) + } } else { - fmt.Fprintln(os.Stderr, "Your default web browser has been opened to visit:") - fmt.Fprintln(os.Stderr) - fmt.Fprintln(os.Stderr, authURL) - fmt.Fprintln(os.Stderr) + fmt.Fprintln(os.Stderr, authURL) } // Wait for response and return the token