diff --git a/.gitignore b/.gitignore index 0035959..996e775 100644 --- a/.gitignore +++ b/.gitignore @@ -7,4 +7,5 @@ .Trashes ehthumbs.db Thumbs.db -.vscode/ \ No newline at end of file +.vscode/ +.idea/ \ No newline at end of file diff --git a/devtool/dev.go b/devtool/dev.go index a6b0c1d..b28651c 100644 --- a/devtool/dev.go +++ b/devtool/dev.go @@ -12,11 +12,11 @@ import ( ) var descCmd = &cobra.Command{ - Use: "dev", - Short: "Developer tool for basic work ", - Long: `This command helps you to work flogo contributions `, - PersistentPreRun: func(cmd *cobra.Command, args []string) {}, + Use: "dev", + Short: "Developer tool for basic work ", + Long: `This command helps you to work flogo contributions `, Run: func(cmd *cobra.Command, args []string) { + }, } var GOPATH string diff --git a/devtool/gen-action.go b/devtool/gen-action.go index bf69519..c0b5e7e 100644 --- a/devtool/gen-action.go +++ b/devtool/gen-action.go @@ -9,11 +9,12 @@ import ( ) var genAction = &cobra.Command{ - Use: "gen-action", - Short: "Generate activity scaffold", - Long: `This subcommand helps you generate activity-scaffold`, - + Use: "gen-action", + Short: "Generate activity scaffold", + Long: `This subcommand helps you generate activity-scaffold`, + PersistentPreRun: func(cmd *cobra.Command, args []string) {}, Run: func(cmd *cobra.Command, args []string) { + var actionContrib string if len(args) < 1 { diff --git a/devtool/gen-activity.go b/devtool/gen-activity.go index 862c8c4..4594b8c 100644 --- a/devtool/gen-activity.go +++ b/devtool/gen-activity.go @@ -9,10 +9,10 @@ import ( ) var genActivity = &cobra.Command{ - Use: "gen-activity", - Short: "Generate activity scaffold", - Long: `This subcommand helps you generate activity-scaffold`, - + Use: "gen-activity", + Short: "Generate activity scaffold", + Long: `This subcommand helps you generate activity-scaffold`, + PersistentPreRun: func(cmd *cobra.Command, args []string) {}, Run: func(cmd *cobra.Command, args []string) { var activityContrib string diff --git a/devtool/gen-trigger.go b/devtool/gen-trigger.go index a9fd96b..321da9d 100644 --- a/devtool/gen-trigger.go +++ b/devtool/gen-trigger.go @@ -9,10 +9,10 @@ import ( ) var genTrigger = &cobra.Command{ - Use: "gen-trigger", - Short: "Generate activity scaffold", - Long: `This subcommand helps you generate activity-scaffold`, - + Use: "gen-trigger", + Short: "Generate activity scaffold", + Long: `This subcommand helps you generate activity-scaffold`, + PersistentPreRun: func(cmd *cobra.Command, args []string) {}, Run: func(cmd *cobra.Command, args []string) { var triggerContrib string diff --git a/devtool/sync-metadata.go b/devtool/sync-metadata.go index 2ce9bc1..d4ae185 100644 --- a/devtool/sync-metadata.go +++ b/devtool/sync-metadata.go @@ -17,9 +17,10 @@ import ( ) var syncMetadata = &cobra.Command{ - Use: "sync-metadata", - Short: "sync descriptor json and metadata", - Long: `This subcommand creates descriptor json from metadata`, + Use: "sync-metadata", + Short: "sync descriptor json and metadata", + Long: `This subcommand creates descriptor json from metadata`, + PersistentPreRun: func(cmd *cobra.Command, args []string) {}, Run: func(cmd *cobra.Command, args []string) { pwd, err := os.Getwd() diff --git a/devtool/upgrade.go b/devtool/upgrade.go new file mode 100644 index 0000000..34dc26f --- /dev/null +++ b/devtool/upgrade.go @@ -0,0 +1,53 @@ +package devtool + +import ( + "fmt" + "os" + "path/filepath" + + "github.com/project-flogo/cli/api" + "github.com/project-flogo/cli/common" + "github.com/project-flogo/cli/util" + "github.com/spf13/cobra" +) + +func init() { + descCmd.AddCommand(updateMaster) +} + +const ( + fJsonFile = "flogo.json" + corePath = "github.com/project-flogo/master" +) + +var updateMaster = &cobra.Command{ + Use: "upgrade-master", + Short: "Update all contributions to master", + Long: `This subcommand helps you to upgrade all contributions to master branch`, + Run: func(cmd *cobra.Command, args []string) { + project := common.CurrentProject() + + imports, err := util.GetAppImports(filepath.Join(project.Dir(), fJsonFile), project.DepManager(), true) + if err != nil { + fmt.Fprintf(os.Stderr, "Error updating all contributions: %v\n", err) + os.Exit(1) + } + //Update each package in imports + for _, imp := range imports.GetAllImports() { + + err = api.UpdatePkg(project, imp.GoImportPath()+"@master") + + if err != nil { + fmt.Fprintf(os.Stderr, "Error updating contribution/dependency: %v\n", err) + os.Exit(1) + } + } + + err = api.UpdatePkg(project, corePath+"@master") + + if err != nil { + fmt.Fprintf(os.Stderr, "Error updating contribution/dependency: %v\n", err) + os.Exit(1) + } + }, +}