Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package minio-client for openSUSE:Factory checked in at 2023-09-21 22:22:04 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/minio-client (Old) and /work/SRC/openSUSE:Factory/.minio-client.new.1770 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "minio-client" Thu Sep 21 22:22:04 2023 rev:46 rq:1112663 version:20230920T152231Z Changes: -------- --- /work/SRC/openSUSE:Factory/minio-client/minio-client.changes 2023-09-20 13:27:41.199414772 +0200 +++ /work/SRC/openSUSE:Factory/.minio-client.new.1770/minio-client.changes 2023-09-21 22:22:06.442816659 +0200 @@ -1,0 +2,11 @@ +Thu Sep 21 04:46:19 UTC 2023 - ka...@b1-systems.de + +- Update to version 20230920T152231Z: + * perf net: Show the error with the bandwidth results (#4688) + * add exclude-storageclass flag for mirror (#4684) + * Support multiple policies in 'mc admin user policy' command + (#4685) + * hide all old deprecate heal options (#4682) + * Add download links (#4681) + +------------------------------------------------------------------- Old: ---- mc-20230913T230858Z.obscpio New: ---- mc-20230920T152231Z.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ minio-client.spec ++++++ --- /var/tmp/diff_new_pack.kEi7Rs/_old 2023-09-21 22:22:08.778901428 +0200 +++ /var/tmp/diff_new_pack.kEi7Rs/_new 2023-09-21 22:22:08.778901428 +0200 @@ -22,7 +22,7 @@ %define binary_name minio-client Name: minio-client -Version: 20230913T230858Z +Version: 20230920T152231Z Release: 0 Summary: Client for MinIO License: AGPL-3.0-only ++++++ _service ++++++ --- /var/tmp/diff_new_pack.kEi7Rs/_old 2023-09-21 22:22:08.806902445 +0200 +++ /var/tmp/diff_new_pack.kEi7Rs/_new 2023-09-21 22:22:08.810902589 +0200 @@ -5,7 +5,7 @@ <param name="exclude">.git</param> <param name="changesgenerate">enable</param> <param name="versionformat">@PARENT_TAG@</param> - <param name="revision">RELEASE.2023-09-13T23-08-58Z</param> + <param name="revision">RELEASE.2023-09-20T15-22-31Z</param> <param name="match-tag">RELEASE.*</param> <param name="versionrewrite-pattern">RELEASE\.(.*)-(.*)-(.*)-(.*)-(.*)</param> <param name="versionrewrite-replacement">\1\2\3\4\5</param> @@ -19,7 +19,7 @@ <param name="compression">gz</param> </service> <service name="go_modules" mode="manual"> - <param name="archive">mc-20230913T230858Z.obscpio</param> + <param name="archive">mc-20230920T152231Z.obscpio</param> </service> </services> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.kEi7Rs/_old 2023-09-21 22:22:08.830903315 +0200 +++ /var/tmp/diff_new_pack.kEi7Rs/_new 2023-09-21 22:22:08.830903315 +0200 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/minio/mc</param> - <param name="changesrevision">e561bc770e9ba6659a13a094e08a530a9685748c</param></service></servicedata> + <param name="changesrevision">38b8665e9e8649f98e6162bdb5163172e6ecc187</param></service></servicedata> (No newline at EOF) ++++++ mc-20230913T230858Z.obscpio -> mc-20230920T152231Z.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mc-20230913T230858Z/README.md new/mc-20230920T152231Z/README.md --- old/mc-20230913T230858Z/README.md 2023-09-14 01:08:58.000000000 +0200 +++ new/mc-20230920T152231Z/README.md 2023-09-20 17:22:31.000000000 +0200 @@ -88,7 +88,9 @@ | Platform | Architecture | URL | | ---------- | -------- |------| |GNU/Linux|64-bit Intel|https://dl.min.io/client/mc/release/linux-amd64/mc | -||64-bit PPC|https://dl.min.io/client/mc/release/linux-ppc64le/mc | +|GNU/Linux|64-bit PPC|https://dl.min.io/client/mc/release/linux-ppc64le/mc | +|GNU/Linux|64-bit ARM|https://dl.min.io/client/mc/release/linux-arm64/mc | +|Linux/s390x|S390X|https://dl.min.io/client/mc/release/linux-s390x/mc | ``` wget https://dl.min.io/client/mc/release/linux-amd64/mc diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mc-20230913T230858Z/cmd/admin-heal.go new/mc-20230920T152231Z/cmd/admin-heal.go --- old/mc-20230913T230858Z/cmd/admin-heal.go 2023-09-14 01:08:58.000000000 +0200 +++ new/mc-20230920T152231Z/cmd/admin-heal.go 2023-09-20 17:22:31.000000000 +0200 @@ -41,37 +41,45 @@ var adminHealFlags = []cli.Flag{ cli.StringFlag{ - Name: "scan", - Usage: "select the healing scan mode (normal/deep)", - Value: scanNormalMode, + Name: "scan", + Usage: "select the healing scan mode (normal/deep)", + Value: scanNormalMode, + Hidden: true, }, cli.BoolFlag{ - Name: "recursive, r", - Usage: "heal recursively", + Name: "recursive, r", + Usage: "heal recursively", + Hidden: true, }, cli.BoolFlag{ - Name: "dry-run, n", - Usage: "only inspect data, but do not mutate", + Name: "dry-run, n", + Usage: "only inspect data, but do not mutate", + Hidden: true, }, cli.BoolFlag{ - Name: "force-start, f", - Usage: "force start a new heal sequence", + Name: "force-start, f", + Usage: "force start a new heal sequence", + Hidden: true, }, cli.BoolFlag{ - Name: "force-stop, s", - Usage: "force stop a running heal sequence", + Name: "force-stop, s", + Usage: "force stop a running heal sequence", + Hidden: true, }, cli.BoolFlag{ - Name: "remove", - Usage: "remove dangling objects in heal sequence", + Name: "remove", + Usage: "remove dangling objects in heal sequence", + Hidden: true, }, cli.StringFlag{ - Name: "storage-class", - Usage: "show server/drives failure tolerance with the given storage class", + Name: "storage-class", + Usage: "show server/drives failure tolerance with the given storage class", + Hidden: true, }, cli.BoolFlag{ - Name: "rewrite", - Usage: "rewrite objects from older to newer format", + Name: "rewrite", + Usage: "rewrite objects from older to newer format", + Hidden: true, }, cli.BoolFlag{ Name: "verbose, v", @@ -81,7 +89,7 @@ var adminHealCmd = cli.Command{ Name: "heal", - Usage: "heal bucket(s) and object(s) on MinIO server", + Usage: "monitor healing for bucket(s) and object(s) on MinIO server", Action: mainAdminHeal, OnUsageError: onUsageError, Before: setGlobalsFromContext, @@ -652,13 +660,6 @@ return nil } - for content := range clnt.List(globalContext, ListOptions{Recursive: false, ShowDir: DirNone}) { - if content.Err != nil { - fatalIf(content.Err.Trace(clnt.GetURL().String()), "Unable to heal bucket `"+bucket+"`.") - return nil - } - } - opts := madmin.HealOpts{ ScanMode: transformScanArg(ctx.String("scan")), Remove: ctx.Bool("remove"), diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mc-20230913T230858Z/cmd/admin-trace.go new/mc-20230920T152231Z/cmd/admin-trace.go --- old/mc-20230913T230858Z/cmd/admin-trace.go 2023-09-14 01:08:58.000000000 +0200 +++ new/mc-20230920T152231Z/cmd/admin-trace.go 2023-09-20 17:22:31.000000000 +0200 @@ -159,7 +159,7 @@ var adminTraceCmd = cli.Command{ Name: "trace", - Usage: "show http trace for MinIO server", + Usage: "Show HTTP call trace for all incoming and internode on MinIO", Action: mainAdminTrace, OnUsageError: onUsageError, Before: setGlobalsFromContext, @@ -174,7 +174,6 @@ FLAGS: {{range .VisibleFlags}}{{.}} {{end}} - CALL TYPES: ` + traceCallsHelp() + ` diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mc-20230913T230858Z/cmd/admin-user-policy.go new/mc-20230920T152231Z/cmd/admin-user-policy.go --- old/mc-20230913T230858Z/cmd/admin-user-policy.go 2023-09-14 01:08:58.000000000 +0200 +++ new/mc-20230920T152231Z/cmd/admin-user-policy.go 2023-09-20 17:22:31.000000000 +0200 @@ -19,6 +19,7 @@ import ( "fmt" + "strings" "github.com/fatih/color" "github.com/minio/cli" @@ -70,13 +71,17 @@ user, e := client.GetUserInfo(globalContext, args.Get(1)) fatalIf(probe.NewError(e).Trace(args...), "Unable to get user info") - pinfo, e := getPolicyInfo(client, user.PolicyName) if user.PolicyName == "" { - e = fmt.Errorf("Policy not found for user %s", args.Get(1)) + e = fmt.Errorf("policy not found for user %s", args.Get(1)) + fatalIf(probe.NewError(e).Trace(args...), "Unable to fetch user policy document") } - fatalIf(probe.NewError(e).Trace(args...), "Unable to fetch user policy document") - fmt.Println(string(pinfo.Policy)) + policies := strings.Split(user.PolicyName, ",") + for _, policy := range policies { + pinfo, e := getPolicyInfo(client, policy) + fatalIf(probe.NewError(e).Trace(args...), "Unable to fetch user policy document for policy "+policy) + fmt.Println(string(pinfo.Policy)) + } return nil } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mc-20230913T230858Z/cmd/mirror-main.go new/mc-20230920T152231Z/cmd/mirror-main.go --- old/mc-20230913T230858Z/cmd/mirror-main.go 2023-09-14 01:08:58.000000000 +0200 +++ new/mc-20230920T152231Z/cmd/mirror-main.go 2023-09-20 17:22:31.000000000 +0200 @@ -101,6 +101,10 @@ Name: "exclude", Usage: "exclude object(s) that match specified object name pattern", }, + cli.StringSliceFlag{ + Name: "exclude-storageclass", + Usage: "exclude object(s) that match the specified storage class", + }, cli.StringFlag{ Name: "older-than", Usage: "filter object(s) older than value in duration string (e.g. 7d10h31s)", @@ -581,6 +585,20 @@ continue } + sc, ok := event.UserMetadata["x-amz-storage-class"] + if ok { + var found bool + for _, esc := range mj.opts.excludeStorageClasses { + if esc == sc { + found = true + break + } + } + if found { + continue + } + } + targetPath := urlJoinPath(mj.targetURL, sourceSuffix) // newClient needs the unexpanded path, newCLientURL needs the expanded path @@ -890,20 +908,21 @@ isFake := cli.Bool("fake") || cli.Bool("dry-run") mopts := mirrorOptions{ - isFake: isFake, - isRemove: isRemove, - isOverwrite: isOverwrite, - isWatch: isWatch, - isMetadata: isMetadata, - md5: cli.Bool("md5"), - disableMultipart: cli.Bool("disable-multipart"), - excludeOptions: cli.StringSlice("exclude"), - olderThan: cli.String("older-than"), - newerThan: cli.String("newer-than"), - storageClass: cli.String("storage-class"), - userMetadata: userMetadata, - encKeyDB: encKeyDB, - activeActive: isWatch, + isFake: isFake, + isRemove: isRemove, + isOverwrite: isOverwrite, + isWatch: isWatch, + isMetadata: isMetadata, + md5: cli.Bool("md5"), + disableMultipart: cli.Bool("disable-multipart"), + excludeOptions: cli.StringSlice("exclude"), + excludeStorageClasses: cli.StringSlice("exclude-storageclass"), + olderThan: cli.String("older-than"), + newerThan: cli.String("newer-than"), + storageClass: cli.String("storage-class"), + userMetadata: userMetadata, + encKeyDB: encKeyDB, + activeActive: isWatch, } // Create a new mirror job and execute it diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mc-20230913T230858Z/cmd/mirror-url.go new/mc-20230920T152231Z/cmd/mirror-url.go --- old/mc-20230913T230858Z/cmd/mirror-url.go 2023-09-14 01:08:58.000000000 +0200 +++ new/mc-20230920T152231Z/cmd/mirror-url.go 2023-09-20 17:22:31.000000000 +0200 @@ -147,6 +147,19 @@ continue } + if diffMsg.firstContent != nil { + var found bool + for _, esc := range opts.excludeStorageClasses { + if esc == diffMsg.firstContent.StorageClass { + found = true + break + } + } + if found { + continue + } + } + switch diffMsg.Diff { case differInNone: // No difference, continue. @@ -203,14 +216,14 @@ } type mirrorOptions struct { - isFake, isOverwrite, activeActive bool - isWatch, isRemove, isMetadata bool - excludeOptions []string - encKeyDB map[string][]prefixSSEPair - md5, disableMultipart bool - olderThan, newerThan string - storageClass string - userMetadata map[string]string + isFake, isOverwrite, activeActive bool + isWatch, isRemove, isMetadata bool + excludeOptions, excludeStorageClasses []string + encKeyDB map[string][]prefixSSEPair + md5, disableMultipart bool + olderThan, newerThan string + storageClass string + userMetadata map[string]string } // Prepares urls that need to be copied or removed based on requested options. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mc-20230913T230858Z/cmd/speedtest-spinner.go new/mc-20230920T152231Z/cmd/speedtest-spinner.go --- old/mc-20230913T230858Z/cmd/speedtest-spinner.go 2023-09-14 01:08:58.000000000 +0200 +++ new/mc-20230920T152231Z/cmd/speedtest-spinner.go 2023-09-20 17:22:31.000000000 +0200 @@ -212,21 +212,12 @@ }) } else { for _, nodeResult := range nres.NodeResults { - if nodeResult.Error != "" { - data = append(data, []string{ - trailerIfGreaterThan(nodeResult.Endpoint, 64), - crossTickCell, - crossTickCell, - "Err: " + nodeResult.Error, - }) - } else { - data = append(data, []string{ - trailerIfGreaterThan(nodeResult.Endpoint, 64), - whiteStyle.Render(humanize.IBytes(uint64(nodeResult.RX))) + "/s", - whiteStyle.Render(humanize.IBytes(uint64(nodeResult.TX))) + "/s", - "", - }) - } + data = append(data, []string{ + trailerIfGreaterThan(nodeResult.Endpoint, 64), + whiteStyle.Render(humanize.IBytes(uint64(nodeResult.RX))) + "/s", + whiteStyle.Render(humanize.IBytes(uint64(nodeResult.TX))) + "/s", + "Err: " + nodeResult.Error, + }) } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mc-20230913T230858Z/docs/minio-admin-complete-guide.md new/mc-20230920T152231Z/docs/minio-admin-complete-guide.md --- old/mc-20230913T230858Z/docs/minio-admin-complete-guide.md 2023-09-14 01:08:58.000000000 +0200 +++ new/mc-20230920T152231Z/docs/minio-admin-complete-guide.md 2023-09-20 17:22:31.000000000 +0200 @@ -884,16 +884,13 @@ ``` <a name="heal"></a> -### Command `heal` - heal bucket(s) and object(s) on MinIO server -Healing is automatic on server side which runs on a continuous basis on a low priority thread. - -<a name="heal"></a> -### Command `heal` - heal bucket(s) and object(s) on MinIO server -Healing is automatic on server side which runs on a continuous basis on a low priority thread. +### Command `heal` - monitor healing of bucket(s) and object(s) on MinIO Server +Healing is automatic on server side which runs on a continuous basis on a low priority thread, this +command allows you to monitor the running heals on the server side. ``` NAME: - mc admin heal - heal bucket(s) and object(s) on MinIO server + mc admin heal - monitor healing of bucket(s) and object(s) on MinIO Server USAGE: mc admin heal [FLAGS] TARGET @@ -905,16 +902,16 @@ *Example: Monitor healing status on a running server at alias 'myminio'.* ``` - mc admin heal myminio/ +mc admin heal myminio/ ``` <a name="trace"></a> -### Command `trace` - Show http trace for MinIO server -`trace` command displays server http trace of one or all MinIO servers (under distributed cluster) +### Command `trace` - Show HTTP call trace for all incoming and internode on MinIO +`trace` command displays server HTTP trace of one or all MinIO servers (under distributed cluster) ```sh NAME: - mc admin trace - show http trace for MinIO server + mc admin trace - Show HTTP call trace for all incoming and internode on MinIO FLAGS: --verbose, -v print verbose trace @@ -932,12 +929,15 @@ --response-duration 5ms trace calls only with response duration greater than this threshold (e.g. 5ms) (default: 0s) --filter-size value filter size, use with filter (see UNITS) --help, -h show help - + CALL TYPES: + batch-keyrotation: Trace Batch KeyRotation (alias: brot) batch-replication: Trace Batch Replication (alias: brep) bootstrap: Trace Bootstrap operations decommission: Trace Decommission operations (alias: decom) + ftp: Trace FTP operations healing: Trace Healing operations (alias: heal) + ilm: Trace ILM operations internal: Trace Internal RPC calls os: Trace Operating System calls rebalance: Trace Server Pool Rebalancing operations ++++++ mc.obsinfo ++++++ --- /var/tmp/diff_new_pack.kEi7Rs/_old 2023-09-21 22:22:09.086912605 +0200 +++ /var/tmp/diff_new_pack.kEi7Rs/_new 2023-09-21 22:22:09.094912895 +0200 @@ -1,5 +1,5 @@ name: mc -version: 20230913T230858Z -mtime: 1694646538 -commit: e561bc770e9ba6659a13a094e08a530a9685748c +version: 20230920T152231Z +mtime: 1695223351 +commit: 38b8665e9e8649f98e6162bdb5163172e6ecc187 ++++++ vendor.tar.gz ++++++ /work/SRC/openSUSE:Factory/minio-client/vendor.tar.gz /work/SRC/openSUSE:Factory/.minio-client.new.1770/vendor.tar.gz differ: char 5, line 1