Quellcode durchsuchen

sort volume drivers and auth plugins in info response

Signed-off-by: allencloud <allen.sun@daocloud.io>
allencloud vor 8 Jahren
Ursprung
Commit
1d1362bdb2
3 geänderte Dateien mit 17 neuen und 1 gelöschten Zeilen
  1. 14 0
      daemon/config.go
  2. 1 1
      daemon/info.go
  3. 2 0
      volume/drivers/extpoint.go

+ 14 - 0
daemon/config.go

@@ -8,6 +8,7 @@ import (
 	"io"
 	"io"
 	"io/ioutil"
 	"io/ioutil"
 	"runtime"
 	"runtime"
+	"sort"
 	"strings"
 	"strings"
 	"sync"
 	"sync"
 
 
@@ -523,3 +524,16 @@ func ValidateConfiguration(config *Config) error {
 
 
 	return nil
 	return nil
 }
 }
+
+// GetAuthorizationPlugins returns daemon's sorted authorization plugins
+func (config *Config) GetAuthorizationPlugins() []string {
+	config.reloadLock.Lock()
+	defer config.reloadLock.Unlock()
+
+	authPlugins := make([]string, 0, len(config.AuthorizationPlugins))
+	for _, p := range config.AuthorizationPlugins {
+		authPlugins = append(authPlugins, p)
+	}
+	sort.Strings(authPlugins)
+	return authPlugins
+}

+ 1 - 1
daemon/info.go

@@ -174,7 +174,7 @@ func (daemon *Daemon) showPluginsInfo() types.PluginsInfo {
 
 
 	pluginsInfo.Volume = volumedrivers.GetDriverList()
 	pluginsInfo.Volume = volumedrivers.GetDriverList()
 	pluginsInfo.Network = daemon.GetNetworkDriverList()
 	pluginsInfo.Network = daemon.GetNetworkDriverList()
-	pluginsInfo.Authorization = daemon.configStore.AuthorizationPlugins
+	pluginsInfo.Authorization = daemon.configStore.GetAuthorizationPlugins()
 
 
 	return pluginsInfo
 	return pluginsInfo
 }
 }

+ 2 - 0
volume/drivers/extpoint.go

@@ -4,6 +4,7 @@ package volumedrivers
 
 
 import (
 import (
 	"fmt"
 	"fmt"
+	"sort"
 	"sync"
 	"sync"
 
 
 	"github.com/docker/docker/pkg/locker"
 	"github.com/docker/docker/pkg/locker"
@@ -176,6 +177,7 @@ func GetDriverList() []string {
 		driverList = append(driverList, driverName)
 		driverList = append(driverList, driverName)
 	}
 	}
 	drivers.Unlock()
 	drivers.Unlock()
+	sort.Strings(driverList)
 	return driverList
 	return driverList
 }
 }