Skip to content

Commit a99c38e

Browse files
feat: add plugin-resolver flag
1 parent 1b57e43 commit a99c38e

File tree

2 files changed

+11
-1
lines changed

2 files changed

+11
-1
lines changed

pkg/config/config.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ type Config struct {
3939
DownloadPlugins bool
4040
ShowProgress bool
4141
AllowMaintainedVersionOnDefaultBranch bool
42+
PluginResolver string
4243
}
4344

4445
func mustGetString(cmd *cobra.Command, name string) string {
@@ -130,6 +131,7 @@ func NewConfig(cmd *cobra.Command) (*Config, error) {
130131
DownloadPlugins: mustGetBool(cmd, "download-plugins"),
131132
ShowProgress: mustGetBool(cmd, "show-progress"),
132133
AllowMaintainedVersionOnDefaultBranch: mustGetBool(cmd, "allow-maintained-version-on-default-branch"),
134+
PluginResolver: viper.GetString("pluginResolver"),
133135
}
134136
return conf, nil
135137
}
@@ -187,6 +189,7 @@ func SetFlags(cmd *cobra.Command) {
187189
cmd.Flags().Bool("show-progress", false, "shows the plugin download progress")
188190
cmd.Flags().String("config", "", "config file (default is .semrelrc)")
189191
cmd.Flags().Bool("allow-maintained-version-on-default-branch", false, "allow configuring the maintained version on the default branch")
192+
cmd.Flags().String("plugin-resolver", "registry", "which resolver should be used to resolve plugins (registry or github)")
190193
cmd.Flags().SortFlags = true
191194

192195
must(viper.BindPFlag("maintainedVersion", cmd.Flags().Lookup("maintained-version")))
@@ -198,6 +201,9 @@ func SetFlags(cmd *cobra.Command) {
198201
must(viper.BindPFlag("plugins.changelog-generator.name", cmd.Flags().Lookup("changelog-generator")))
199202
must(viper.BindPFlag("plugins.files-updater.names", cmd.Flags().Lookup("files-updater")))
200203
must(viper.BindPFlag("plugins.hooks.names", cmd.Flags().Lookup("hooks")))
204+
205+
must(viper.BindPFlag("pluginResolver", cmd.Flags().Lookup("plugin-resolver")))
206+
must(viper.BindEnv("pluginResolver", "SEMREL_PLUGIN_RESOLVER"))
201207
}
202208

203209
func InitConfig(cmd *cobra.Command) error {

pkg/plugin/discovery/discovery.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,11 @@ func New(config *config.Config) (*Discovery, error) {
3838
return nil, err
3939
}
4040
// use the registry resolver as default
41-
resolvers["default"] = resolvers["registry"]
41+
resolvers["default"] = resolvers[config.PluginResolver]
42+
43+
if resolvers["default"] == nil {
44+
return nil, fmt.Errorf("resolver %s does not exist", config.PluginResolver)
45+
}
4246

4347
return &Discovery{
4448
config: config,

0 commit comments

Comments
 (0)