feat: option for cloudflared access login to only output jwt (#1249)

Adds a -no-pretty flag to cloudflared access login:

```shell
$ cloudflared access login -no-pretty $url
<TOKEN>
```

This removes the need to parse the token from the output message, making it
easier for external applications.
This commit is contained in:
Ricardo Pacheco 2024-05-20 19:27:02 +01:00
parent 2db00211f5
commit e9e7c7fe4a
1 changed files with 11 additions and 1 deletions

View File

@ -27,6 +27,7 @@ import (
const (
loginQuietFlag = "quiet"
noPrettyFlag = "no-pretty"
sshHostnameFlag = "hostname"
sshDestinationFlag = "destination"
sshURLFlag = "url"
@ -97,6 +98,10 @@ func Commands() []*cli.Command {
Aliases: []string{"q"},
Usage: "do not print the jwt to the command line",
},
&cli.BoolFlag{
Name: noPrettyFlag,
Usage: "only print the jwt to the command line",
},
},
},
{
@ -261,7 +266,12 @@ func login(c *cli.Context) error {
if c.Bool(loginQuietFlag) {
return nil
}
fmt.Fprintf(os.Stdout, "Successfully fetched your token:\n\n%s\n\n", cfdToken)
if c.Bool(noPrettyFlag) {
fmt.Fprintf(os.Stdout, cfdToken)
} else {
fmt.Fprintf(os.Stdout, "Successfully fetched your token:\n\n%s\n\n", cfdToken)
}
return nil
}