Add datastore list, filter and sort, add snapshot sorting

This commit is contained in:
yo
2022-06-18 16:09:22 +02:00
parent b4fd7caca7
commit 86e08ec0f7
7 changed files with 530 additions and 44 deletions

View File

@@ -40,7 +40,7 @@ func ListJailsProps(args []string) {
* into gJails global var
*******************************************************************************/
func ListJails(args []string, display bool) {
fields := strings.Split(gDisplayColumns, ",")
fields := strings.Split(gDisplayJColumns, ",")
for _, d := range viper.GetStringSlice("datastore") {
listJailsFromDatastore(d)
@@ -102,12 +102,12 @@ func ListJails(args []string, display bool) {
/ Sort jails
/ We support 3 sort criteria max
/**************************************************************/
if len(gSortFields) > 0 && gSortFields != "none" {
if len(gSortJailFields) > 0 && gSortJailFields != "none" {
js := initJailSortStruct()
// The way we manage criteria quantity is not very elegant...
var fct1, fct2, fct3 *reflect.Value
for i, c := range strings.Split(gSortFields, ",") {
for i, c := range strings.Split(gSortJailFields, ",") {
var fctName string
if strings.HasPrefix(c, "-") {
fctName = fmt.Sprintf("%sDec", strings.Replace(c, "-", "", 1))
@@ -132,7 +132,7 @@ func ListJails(args []string, display bool) {
}
}
switch len(strings.Split(gSortFields, ",")) {
switch len(strings.Split(gSortJailFields, ",")) {
case 1:
JailsOrderedBy(fct1.Interface().(jailLessFunc)).Sort(jails)
case 2: