Sort plugin list by name in the plugin manager
Change-Id: I3265cc68c8f1f9e3a88351aeab57f8d6fd34613b
diff --git a/jenkins-docker/server/plugin-manager/js/plugin-manager.js b/jenkins-docker/server/plugin-manager/js/plugin-manager.js
index e35c769..fdcc7f2 100644
--- a/jenkins-docker/server/plugin-manager/js/plugin-manager.js
+++ b/jenkins-docker/server/plugin-manager/js/plugin-manager.js
@@ -52,10 +52,17 @@
.then(
function successCallback(response) {
plugins.list = [];
+ const pluginNameRegex = /(module-|plugin-|ui-plugin-)(.*)-bazel.*/;
- angular.forEach(response.data.jobs, function(plugin) {
+ var sortedJobs = response.data.jobs.sort(function(a, b) {
+ var aName = a.name.match(pluginNameRegex);
+ var bName = b.name.match(pluginNameRegex);
+ if (!aName || !bName) return 0;
+ return aName[2].localeCompare(bName[2]);
+ });
- const pluginNameRegex = /(module-|plugin-|ui-plugin-)(.*)-bazel.*/;
+ angular.forEach(sortedJobs, function(plugin) {
+
var pluginNameMatches = plugin.name.match(pluginNameRegex);
if (!pluginNameMatches) {
return;