跟踪代码发现由于配置的pluginName都是同一个name应用在了不同的extensonPoint上,所以在初始化的时候被覆盖掉。
func (f *framework) pluginsNeeded(plugins *config.Plugins) map[string]config.Plugin {
pgMap := make(map[string]config.Plugin)
if plugins == nil {
return pgMap
}
find := func(pgs *config.PluginSet) {
if pgs == nil {
return
}
for _, pg := range pgs.Enabled {
pgMap[pg.Name] = pg
}
}
for _, e := range f.getExtensionPoints(plugins) {
find(e.plugins)
}
return pgMap
}
由于是按照name来设置的map所以如果在plugin.yaml配置文件中设置一个扩展点的weight是不行的。
最后只能全部设置了weight