Split `go_target` into `go_os` and `go_arch`

This commit is contained in:
Tobias Speicher 2023-11-01 22:43:38 +01:00
parent 10cbc169c1
commit ce53ea32c6
No known key found for this signature in database
GPG Key ID: 2CF824BD810C3BDB
3 changed files with 10 additions and 6 deletions

View File

@ -1,7 +1,7 @@
Enhancement: Add support for `--json` option to `version` command
Restic now supports outputting restic version and used go version and platform
target via json when using the version command.
Restic now supports outputting restic version and used go version, OS and
architecture via JSON when using the version command.
https://github.com/restic/restic/issues/4547
https://github.com/restic/restic/pull/4553

View File

@ -26,18 +26,20 @@ Exit status is 0 if the command was successful, and non-zero if there was any er
type jsonVersion struct {
Version string `json:"version"`
GoVersion string `json:"go_version"`
GoTarget string `json:"go_target"`
GoOS string `json:"go_os"`
GoArch string `json:"go_arch"`
}
jsonS := jsonVersion{
Version: version,
GoVersion: runtime.Version(),
GoTarget: runtime.GOOS + "/" + runtime.GOARCH,
GoOS: runtime.GOOS,
GoArch: runtime.GOARCH,
}
err := json.NewEncoder(globalOptions.stdout).Encode(jsonS)
if err != nil {
Warnf("Encode failed: %v\n", err)
Warnf("JSON encode failed: %v\n", err)
return
}
} else {

View File

@ -588,5 +588,7 @@ The version command returns a single JSON object.
+----------------+--------------------+
| ``go_version`` | Go compile version |
+----------------+--------------------+
| ``go_target`` | Go target platform |
| ``go_os`` | Go OS |
+----------------+--------------------+
| ``go_arch`` | Go architecture |
+----------------+--------------------+