func Config(details, defaultDetails *config.BintrayDetails, interactive bool) (*config.BintrayDetails, error) { if details == nil { details = new(config.BintrayDetails) } if interactive { if defaultDetails == nil { var err error defaultDetails, err = config.ReadBintrayConf() if err != nil { return nil, err } } if details.User == "" { ioutils.ScanFromConsole("User", &details.User, defaultDetails.User) } if details.Key == "" { print("Key: ") byteKey, err := terminal.ReadPassword(int(syscall.Stdin)) err = cliutils.CheckError(err) if err != nil { return nil, err } details.Key = string(byteKey) if details.Key == "" { details.Key = defaultDetails.Key } } if details.DefPackageLicenses == "" { ioutils.ScanFromConsole("\nDefault package licenses", &details.DefPackageLicenses, defaultDetails.DefPackageLicenses) } } config.SaveBintrayConf(details) return details, nil }
func offerConfig(c *cli.Context) (*config.BintrayDetails, error) { exists, err := config.IsBintrayConfExists() if err != nil { return nil, err } if exists { return nil, nil } val, err := cliutils.GetBoolEnvValue("JFROG_CLI_OFFER_CONFIG", true) if err != nil { return nil, err } if !val { config.SaveBintrayConf(new(config.BintrayDetails)) return nil, nil } msg := "Some CLI commands require the following common options:\n" + "- User\n" + "- API Key\n" + "- Default Package Licenses\n" + "Configuring JFrog CLI with these parameters now will save you having to include them as command options.\n" + "You can also configure these parameters later using the 'config' command.\n" + "Configure now? (y/n): " fmt.Print(msg) var confirm string fmt.Scanln(&confirm) if !cliutils.ConfirmAnswer(confirm) { config.SaveBintrayConf(new(config.BintrayDetails)) return nil, nil } bintrayDetails, err := createBintrayDetails(c, false) if err != nil { return nil, err } details, err := commands.Config(nil, bintrayDetails, true) cliutils.ExitOnErr(err) details.ApiUrl = bintrayDetails.ApiUrl details.DownloadServerUrl = bintrayDetails.DownloadServerUrl return details, nil }
func ClearConfig() { config.SaveBintrayConf(new(config.BintrayDetails)) }