mirror of
https://github.com/gitbucket/gitbucket.git
synced 2025-11-10 15:35:59 +01:00
(refs #1245) Display migrated plugin version if migration is failing
This commit is contained in:
@@ -13,6 +13,7 @@ import gitbucket.core.util.ControlUtil._
|
||||
import gitbucket.core.util.Directory._
|
||||
import gitbucket.core.util.StringUtil._
|
||||
import io.github.gitbucket.scalatra.forms._
|
||||
import io.github.gitbucket.solidbase.manager.JDBCVersionManager
|
||||
import org.apache.commons.io.{FileUtils, IOUtils}
|
||||
import org.apache.commons.mail.{DefaultAuthenticator, HtmlEmail}
|
||||
import org.scalatra.i18n.Messages
|
||||
@@ -175,7 +176,11 @@ trait SystemSettingsControllerBase extends AccountManagementControllerBase {
|
||||
})
|
||||
|
||||
get("/admin/plugins")(adminOnly {
|
||||
html.plugins(PluginRegistry().getPlugins())
|
||||
val manager = new JDBCVersionManager(request2Session(request).conn)
|
||||
val plugins = PluginRegistry().getPlugins().map { plugin =>
|
||||
(plugin, manager.getCurrentVersion(plugin.pluginId))
|
||||
}
|
||||
html.plugins(plugins)
|
||||
})
|
||||
|
||||
|
||||
|
||||
@@ -178,7 +178,7 @@ object PluginRegistry {
|
||||
instance.addPlugin(PluginInfo(
|
||||
pluginId = plugin.pluginId,
|
||||
pluginName = plugin.pluginName,
|
||||
version = plugin.versions.last.getVersion,
|
||||
pluginVersion = plugin.versions.last.getVersion,
|
||||
description = plugin.description,
|
||||
pluginClass = plugin
|
||||
))
|
||||
@@ -212,7 +212,7 @@ case class Link(id: String, label: String, path: String, icon: Option[String] =
|
||||
case class PluginInfo(
|
||||
pluginId: String,
|
||||
pluginName: String,
|
||||
version: String,
|
||||
pluginVersion: String,
|
||||
description: String,
|
||||
pluginClass: Plugin
|
||||
)
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
@(plugins: List[gitbucket.core.plugin.PluginInfo])(implicit context: gitbucket.core.controller.Context)
|
||||
@(plugins: List[(gitbucket.core.plugin.PluginInfo, String)])(implicit context: gitbucket.core.controller.Context)
|
||||
@gitbucket.core.html.main("Plugins"){
|
||||
@gitbucket.core.admin.html.menu("plugins") {
|
||||
<h1>Installed plugins</h1>
|
||||
|
||||
@if(plugins.size > 0) {
|
||||
<ul>
|
||||
@plugins.map {plugin =>
|
||||
<li><a href="#@plugin.pluginId">@plugin.pluginId:@plugin.version</a></li>
|
||||
@plugins.map { case (plugin, migrationVersion) =>
|
||||
<li><a href="#@plugin.pluginId">@plugin.pluginId:@plugin.pluginVersion</a></li>
|
||||
}
|
||||
</ul>
|
||||
|
||||
@plugins.map {plugin =>
|
||||
@plugins.map { case (plugin, migrationVersion) =>
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading strong">@plugin.pluginName</div>
|
||||
<div class="panel-body">
|
||||
@@ -20,7 +20,7 @@
|
||||
</div>
|
||||
<div class="row">
|
||||
<label class="col-md-2">Version</label>
|
||||
<span class="col-md-10">@plugin.version</span>
|
||||
<span class="col-md-10">@plugin.pluginVersion @if(plugin.pluginVersion != migrationVersion){ <span class="error">(Migration failed, current migrated version is @migrationVersion)</span> }</span>
|
||||
</div>
|
||||
<div class="row">
|
||||
<label class="col-md-2">Name</label>
|
||||
|
||||
Reference in New Issue
Block a user