2
0

open.go 766 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. package cmd
  2. import (
  3. "context"
  4. "fmt"
  5. "github.com/porter-dev/porter/cli/cmd/api"
  6. "github.com/porter-dev/porter/cli/cmd/utils"
  7. "github.com/spf13/cobra"
  8. )
  9. var openCmd = &cobra.Command{
  10. Use: "open",
  11. Short: "Opens the browser at the currently set Porter instance",
  12. Run: func(cmd *cobra.Command, args []string) {
  13. client := api.NewClient(getHost()+"/api", "cookie.json")
  14. user, err := client.AuthCheck(context.Background())
  15. if err == nil {
  16. utils.OpenBrowser(fmt.Sprintf("%s/login?email=%s", getHost(), user.Email))
  17. } else {
  18. utils.OpenBrowser(fmt.Sprintf("%s/register", getHost()))
  19. }
  20. },
  21. }
  22. func init() {
  23. rootCmd.AddCommand(openCmd)
  24. rootCmd.PersistentFlags().StringVar(
  25. &host,
  26. "host",
  27. getHost(),
  28. "host url of Porter instance",
  29. )
  30. }