diff --git a/cmd/protobuild/cmd.go b/cmd/protobuild/cmd.go index d960ad1..65fca9b 100644 --- a/cmd/protobuild/cmd.go +++ b/cmd/protobuild/cmd.go @@ -180,7 +180,6 @@ func Main() *cli.Command { defer recovery.Exit() var protoList sync.Map - basePlugin := cfg.BasePlugin for i := range cfg.Root { if pathutil.IsNotExist(cfg.Root[i]) { log.Printf("file %s not found", cfg.Root[i]) @@ -210,6 +209,7 @@ func Main() *cli.Command { })) } + basePlugin := cfg.BasePlugin protoList.Range(func(key, _ interface{}) bool { in := key.(string) @@ -224,6 +224,9 @@ func Main() *cli.Command { reTagOpt := "" for i := range cfg.Plugins { plg := cfg.Plugins[i] + if plg.SkipRun { + continue + } name := plg.Name diff --git a/cmd/protobuild/config.go b/cmd/protobuild/config.go index f87ea8c..92d7231 100644 --- a/cmd/protobuild/config.go +++ b/cmd/protobuild/config.go @@ -33,6 +33,9 @@ type plugin struct { // SkipBase skip base config SkipBase bool `yaml:"skip_base,omitempty"` + // SkipRun skip run plugin + SkipRun bool `yaml:"skip_run,omitempty"` + // ExcludeOpts exclude plugin opts ExcludeOpts pluginOpts `yaml:"exclude_opts,omitempty"` Opt pluginOpts `yaml:"opt,omitempty"`