Skip to content
This repository was archived by the owner on Jul 18, 2025. It is now read-only.

Commit 980b066

Browse files
authored
Merge pull request #114 from mnottale/inspect-sort
inspect: Sort settings output.
2 parents 23ac3dc + c679dc5 commit 980b066

File tree

3 files changed

+28
-2
lines changed

3 files changed

+28
-2
lines changed

e2e/binary_test.go

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -168,6 +168,17 @@ targets:
168168
assert.Assert(t, fs.Equal(dirName, manifest))
169169
}
170170

171+
func TestInspectBinary(t *testing.T) {
172+
dockerApp, _ := getBinary(t)
173+
cmd := exec.Command(dockerApp, "inspect", "render/envvariables")
174+
output, err := cmd.CombinedOutput()
175+
if err != nil {
176+
fmt.Println(string(output))
177+
}
178+
assert.NilError(t, err)
179+
golden.Assert(t, string(output), "envvariables-inspect.golden")
180+
}
181+
171182
func TestPackBinary(t *testing.T) {
172183
dockerApp, hasExperimental := getBinary(t)
173184
if !hasExperimental {
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
myapp 0.1.0
2+
Maintained by: bearclaw <[email protected]>
3+
4+
Setting Default
5+
------- -------
6+
myapp.alpine_version latest
7+
myapp.command1 cat
8+
myapp.command2 foo

renderer/inspect.go

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import (
55
"io/ioutil"
66
"os"
77
"path/filepath"
8+
"sort"
89
"strings"
910
"text/tabwriter"
1011

@@ -40,6 +41,12 @@ func Inspect(appname string) error {
4041
if err != nil {
4142
return err
4243
}
44+
// sort the keys to get consistent output
45+
var settingsKeys []string
46+
for k := range settings {
47+
settingsKeys = append(settingsKeys, k)
48+
}
49+
sort.Slice(settingsKeys, func(i, j int) bool { return settingsKeys[i] < settingsKeys[j] })
4350
// build maintainers string
4451
maintainers := ""
4552
for _, m := range meta.Maintainers {
@@ -58,8 +65,8 @@ func Inspect(appname string) error {
5865
w := tabwriter.NewWriter(os.Stdout, 0, 0, 1, ' ', 0)
5966
fmt.Fprintln(w, "Setting\tDefault")
6067
fmt.Fprintln(w, "-------\t-------")
61-
for k, v := range settings {
62-
fmt.Fprintf(w, "%s\t%s\n", k, v)
68+
for _, k := range settingsKeys {
69+
fmt.Fprintf(w, "%s\t%s\n", k, settings[k])
6370
}
6471
w.Flush()
6572
return nil

0 commit comments

Comments
 (0)