Merge pull request #1917 from kounoike/pr-list-plugins-api

Add plugin list API
This commit is contained in:
Naoki Takezoe
2018-03-21 23:15:11 +09:00
committed by GitHub
2 changed files with 24 additions and 0 deletions

View File

@@ -0,0 +1,17 @@
package gitbucket.core.api
import gitbucket.core.plugin.{PluginRegistry, PluginInfo}
case class ApiPlugin(
id: String,
name: String,
versino: String,
description: String,
jarFileName: String
)
object ApiPlugin{
def apply(plugin: PluginInfo): ApiPlugin = {
ApiPlugin(plugin.pluginId, plugin.pluginName, plugin.pluginVersion, plugin.description, plugin.pluginJar.getName)
}
}

View File

@@ -10,6 +10,7 @@ import gitbucket.core.util.Implicits._
import gitbucket.core.util.JGitUtil._
import gitbucket.core.util.SyntaxSugars._
import gitbucket.core.util._
import gitbucket.core.plugin.PluginRegistry
import gitbucket.core.view.helpers.{isRenderable, renderMarkup}
import org.eclipse.jgit.api.Git
import org.eclipse.jgit.revwalk.RevWalk
@@ -717,5 +718,11 @@ trait ApiControllerBase extends ControllerBase {
}
})
/**
* non-GitHub compatible API for listing plugins
*/
get("/api/v3/gitbucket/plugins"){
PluginRegistry().getPlugins().map{ApiPlugin(_)}
}
}