package version2
import (
"github.com/goodrain/rainbond/api/controller"
"github.com/goodrain/rainbond/api/middleware"
dbmodel "github.com/goodrain/rainbond/db/model"
"github.com/go-chi/chi"
)
func (v2 *V2) pluginRouter() chi.Router {
r := chi.NewRouter()
r.Use(middleware.InitPlugin)
r.Put("/", controller.GetManager().PluginAction)
r.Delete("/", controller.GetManager().PluginAction)
r.Post("/build", controller.GetManager().PluginBuild)
r.Get("/build-version", controller.GetManager().GetAllPluginBuildVersions)
r.Get("/build-version/{version_id}", controller.GetManager().GetPluginBuildVersion)
r.Delete("/build-version/{version_id}", controller.GetManager().DeletePluginBuildVersion)
return r
}
func (v2 *V2) serviceRelatePluginRouter() chi.Router {
r := chi.NewRouter()
r.Post("/", middleware.WrapEL(controller.GetManager().PluginSet, dbmodel.TargetTypeService, "create-service-plugin", dbmodel.SYNEVENTTYPE, false))
r.Put("/", middleware.WrapEL(controller.GetManager().PluginSet, dbmodel.TargetTypeService, "update-service-plugin", dbmodel.SYNEVENTTYPE, false))
r.Get("/", controller.GetManager().PluginSet)
r.Delete("/{plugin_id}", middleware.WrapEL(controller.GetManager().DeletePluginRelation, dbmodel.TargetTypeService, "delete-service-plugin", dbmodel.SYNEVENTTYPE, false))
r.Post("/{plugin_id}/setenv", middleware.WrapEL(controller.GetManager().UpdateVersionEnv, dbmodel.TargetTypeService, "update-service-plugin-config", dbmodel.SYNEVENTTYPE, false))
r.Put("/{plugin_id}/upenv", middleware.WrapEL(controller.GetManager().UpdateVersionEnv, dbmodel.TargetTypeService, "update-service-plugin-config", dbmodel.SYNEVENTTYPE, false))
r.Get("/{plugin_id}/envs", controller.GetManager().GePluginEnvWhichCanBeSet)
return r
}