github.com/mhlo/force@v0.22.28-0.20150915022417-6d05ecfb0b47/logout.go (about)

     1  package main
     2  
     3  import (
     4  	"fmt"
     5  	"os/exec"
     6  	"runtime"
     7  )
     8  
     9  var cmdLogout = &Command{
    10  	Usage: "logout",
    11  	Short: "Log out from force.com",
    12  	Long: `
    13    force logout -u=username
    14  
    15    Example:
    16  
    17      force logout -u=user@example.org
    18  `,
    19  }
    20  
    21  func init() {
    22  	cmdLogout.Run = runLogout
    23  }
    24  
    25  var (
    26  	userName1 = cmdLogout.Flag.String("u", "", "Username for Soap Login")
    27  )
    28  
    29  func runLogout(cmd *Command, args []string) {
    30  	if *userName1 == "" {
    31  		fmt.Println("Missing required argument...")
    32  		cmd.Flag.Usage()
    33  		return
    34  	}
    35  	Config.Delete("accounts", *userName1)
    36  	if active, _ := Config.Load("current", "account"); active == *userName1 {
    37  		Config.Delete("current", "account")
    38  		SetActiveLoginDefault()
    39  	}
    40  	if runtime.GOOS == "windows" {
    41  		cmd := exec.Command("title", account)
    42  		cmd.Run()
    43  	} else {
    44  		title := fmt.Sprintf("\033];%s\007", "")
    45  		fmt.Printf(title)
    46  	}
    47  }