func deleteVersion(c *cli.Context) { if c.NArg() != 1 { cliutils.Exit(cliutils.ExitCodeError, "Wrong number of arguments. "+cliutils.GetDocumentationMessage()) } versionDetails, err := utils.CreateVersionDetails(c.Args().Get(0)) if err != nil { cliutils.Exit(cliutils.ExitCodeError, err.Error()) } bintrayDetails, err := createBintrayDetails(c, true) if err != nil { cliutils.Exit(cliutils.ExitCodeError, err.Error()) } if !c.Bool("quiet") { var confirm string fmt.Print("Delete version " + versionDetails.Version + " of package " + versionDetails.Package + "? (y/n): ") fmt.Scanln(&confirm) if !cliutils.ConfirmAnswer(confirm) { return } } err = commands.DeleteVersion(versionDetails, bintrayDetails) cliutils.ExitOnErr(err) }
func offerConfig(c *cli.Context) (*config.MissionControlDetails, error) { exists, err := config.IsMissionControlConfExists() 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.SaveMissionControlConf(new(config.MissionControlDetails)) return nil, nil } msg := "The CLI commands require the Mission Control URL and authentication details\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.SaveMissionControlConf(new(config.MissionControlDetails)) return nil, nil } details, err := createMissionControlDetails(c, false) if err != nil { return nil, err } return commands.Config(nil, details, true) }
func removeInstance(c *cli.Context) { size := len(c.Args()) if size != 1 { cliutils.Exit(cliutils.ExitCodeError, "Wrong number of arguments. "+cliutils.GetDocumentationMessage()) } instanceName := c.Args()[0] if !c.Bool("quiet") { var confirm string fmt.Print("Remove Instance, " + instanceName + "? (y/n): ") fmt.Scanln(&confirm) if !cliutils.ConfirmAnswer(confirm) { return } } flags, err := createRemoveInstanceFlags(c) if err != nil { cliutils.Exit(cliutils.ExitCodeError, err.Error()) } rtinstances.Remove(instanceName, flags) }
func deleteCmd(c *cli.Context) { if c.NArg() > 0 && c.IsSet("spec") { cliutils.Exit(cliutils.ExitCodeError, "No arguments should be sent when the spec option is used. "+cliutils.GetDocumentationMessage()) } if !(c.NArg() == 1 || (c.NArg() == 0 && c.IsSet("spec"))) { cliutils.Exit(cliutils.ExitCodeError, "Wrong number of arguments. "+cliutils.GetDocumentationMessage()) } var deleteSpec *utils.SpecFiles if c.IsSet("spec") { var err error deleteSpec, err = getDeleteSpec(c) cliutils.ExitOnErr(err) } else { deleteSpec = createDefaultDeleteSpec(c) } flags, err := createDeleteFlags(c) cliutils.ExitOnErr(err) if !c.Bool("quiet") { pathsToDelete, err := commands.GetPathsToDelete(deleteSpec, flags) cliutils.ExitOnErr(err) if len(pathsToDelete) < 1 { return } for _, v := range pathsToDelete { fmt.Println(" " + v.GetFullUrl()) } var confirm string fmt.Print("Are you sure you want to delete the above paths? (y/n): ") fmt.Scanln(&confirm) if !cliutils.ConfirmAnswer(confirm) { return } err = commands.DeleteFiles(pathsToDelete, flags) cliutils.ExitOnErr(err) } else { err = commands.Delete(deleteSpec, flags) cliutils.ExitOnErr(err) } }
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 offerConfig(c *cli.Context) (details *config.ArtifactoryDetails, err error) { var exists bool exists, err = config.IsArtifactoryConfExists() if err != nil { return } if exists { return } var val bool val, err = cliutils.GetBoolEnvValue("JFROG_CLI_OFFER_CONFIG", true) if err != nil { return } if !val { config.SaveArtifactoryConf(new(config.ArtifactoryDetails)) return } msg := "The CLI commands require the Artifactory URL and authentication details\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.SaveArtifactoryConf(new(config.ArtifactoryDetails)) return } details, err = createArtifactoryDetails(c, false) if err != nil { return } encPassword := cliutils.GetBoolFlagValue(c, "enc-password", true) details, err = commands.Config(nil, details, true, encPassword) return }