Merge 535fe9e4b7 into e7586153be
				
					
				
			This commit is contained in:
		
						commit
						304eb372c3
					
				| 
						 | 
					@ -41,6 +41,7 @@ const (
 | 
				
			||||||
	CredFileFlag            = "credentials-file"
 | 
						CredFileFlag            = "credentials-file"
 | 
				
			||||||
	CredContentsFlag        = "credentials-contents"
 | 
						CredContentsFlag        = "credentials-contents"
 | 
				
			||||||
	TunnelTokenFlag         = "token"
 | 
						TunnelTokenFlag         = "token"
 | 
				
			||||||
 | 
						TunnelTokenFileFlag     = "token-file"
 | 
				
			||||||
	overwriteDNSFlagName    = "overwrite-dns"
 | 
						overwriteDNSFlagName    = "overwrite-dns"
 | 
				
			||||||
	noDiagLogsFlagName      = "no-diag-logs"
 | 
						noDiagLogsFlagName      = "no-diag-logs"
 | 
				
			||||||
	noDiagMetricsFlagName   = "no-diag-metrics"
 | 
						noDiagMetricsFlagName   = "no-diag-metrics"
 | 
				
			||||||
| 
						 | 
					@ -126,9 +127,14 @@ var (
 | 
				
			||||||
	})
 | 
						})
 | 
				
			||||||
	tunnelTokenFlag = altsrc.NewStringFlag(&cli.StringFlag{
 | 
						tunnelTokenFlag = altsrc.NewStringFlag(&cli.StringFlag{
 | 
				
			||||||
		Name:    TunnelTokenFlag,
 | 
							Name:    TunnelTokenFlag,
 | 
				
			||||||
		Usage:   "The Tunnel token. When provided along with credentials, this will take precedence.",
 | 
							Usage:   "The Tunnel token. When provided along with credentials, this will take precedence. Also takes precedence over token-file",
 | 
				
			||||||
		EnvVars: []string{"TUNNEL_TOKEN"},
 | 
							EnvVars: []string{"TUNNEL_TOKEN"},
 | 
				
			||||||
	})
 | 
						})
 | 
				
			||||||
 | 
						tunnelTokenFileFlag = altsrc.NewStringFlag(&cli.StringFlag{
 | 
				
			||||||
 | 
							Name:    TunnelTokenFileFlag,
 | 
				
			||||||
 | 
							Usage:   "Filepath at which to read the tunnel token. When provided along with credentials, this will take precedence.",
 | 
				
			||||||
 | 
							EnvVars: []string{"TUNNEL_TOKEN_FILE"},
 | 
				
			||||||
 | 
						})
 | 
				
			||||||
	forceDeleteFlag = &cli.BoolFlag{
 | 
						forceDeleteFlag = &cli.BoolFlag{
 | 
				
			||||||
		Name:    flags.Force,
 | 
							Name:    flags.Force,
 | 
				
			||||||
		Aliases: []string{"f"},
 | 
							Aliases: []string{"f"},
 | 
				
			||||||
| 
						 | 
					@ -708,6 +714,7 @@ func buildRunCommand() *cli.Command {
 | 
				
			||||||
		selectProtocolFlag,
 | 
							selectProtocolFlag,
 | 
				
			||||||
		featuresFlag,
 | 
							featuresFlag,
 | 
				
			||||||
		tunnelTokenFlag,
 | 
							tunnelTokenFlag,
 | 
				
			||||||
 | 
							tunnelTokenFileFlag,
 | 
				
			||||||
		icmpv4SrcFlag,
 | 
							icmpv4SrcFlag,
 | 
				
			||||||
		icmpv6SrcFlag,
 | 
							icmpv6SrcFlag,
 | 
				
			||||||
		maxActiveFlowsFlag,
 | 
							maxActiveFlowsFlag,
 | 
				
			||||||
| 
						 | 
					@ -748,12 +755,22 @@ func runCommand(c *cli.Context) error {
 | 
				
			||||||
			"your origin will not be reachable. You should remove the `hostname` property to avoid this warning.")
 | 
								"your origin will not be reachable. You should remove the `hostname` property to avoid this warning.")
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						tokenStr := c.String(TunnelTokenFlag)
 | 
				
			||||||
 | 
						// Check if tokenStr is blank before checking for tokenFile
 | 
				
			||||||
 | 
						if tokenStr == "" {
 | 
				
			||||||
 | 
							if tokenFile := c.String(TunnelTokenFileFlag); tokenFile != "" {
 | 
				
			||||||
 | 
								data, err := os.ReadFile(tokenFile)
 | 
				
			||||||
 | 
								if err != nil {
 | 
				
			||||||
 | 
									return cliutil.UsageError("Failed to read token file: " + err.Error())
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
								tokenStr = strings.TrimSpace(string(data))
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
	// Check if token is provided and if not use default tunnelID flag method
 | 
						// Check if token is provided and if not use default tunnelID flag method
 | 
				
			||||||
	if tokenStr := c.String(TunnelTokenFlag); tokenStr != "" {
 | 
						if tokenStr != "" {
 | 
				
			||||||
		if token, err := ParseToken(tokenStr); err == nil {
 | 
							if token, err := ParseToken(tokenStr); err == nil {
 | 
				
			||||||
			return sc.runWithCredentials(token.Credentials())
 | 
								return sc.runWithCredentials(token.Credentials())
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					 | 
				
			||||||
		return cliutil.UsageError("Provided Tunnel token is not valid.")
 | 
							return cliutil.UsageError("Provided Tunnel token is not valid.")
 | 
				
			||||||
	} else {
 | 
						} else {
 | 
				
			||||||
		tunnelRef := c.Args().First()
 | 
							tunnelRef := c.Args().First()
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue