mirror of
https://github.com/FlipsideCrypto/convox.git
synced 2026-02-06 10:56:56 +00:00
cli: show provider in rack list (#98)
* cli: show provider in rack list * update tests
This commit is contained in:
parent
302cae8e98
commit
2cd665f967
@ -224,6 +224,10 @@ func localRacks(c *stdcli.Context) ([]rack, error) {
|
||||
status = "running"
|
||||
}
|
||||
|
||||
if _, err := os.Stat(".terraform.tfstate.lock.info"); !os.IsNotExist(err) {
|
||||
status = "updating"
|
||||
}
|
||||
|
||||
if o, ok := output["provider"]; ok {
|
||||
provider = o.Value
|
||||
}
|
||||
@ -353,7 +357,7 @@ func remoteRacks(c *stdcli.Context) ([]rack, error) {
|
||||
for _, r := range rs {
|
||||
racks = append(racks, rack{
|
||||
Name: fmt.Sprintf("%s/%s", r.Organization.Name, r.Name),
|
||||
Provider: r.Provider,
|
||||
Provider: coalesce(r.Provider, "unknown"),
|
||||
Remote: true,
|
||||
Status: r.Status,
|
||||
Url: remote,
|
||||
|
||||
@ -17,10 +17,10 @@ func Racks(rack sdk.Interface, c *stdcli.Context) error {
|
||||
return err
|
||||
}
|
||||
|
||||
t := c.Table("NAME", "STATUS")
|
||||
t := c.Table("NAME", "PROVIDER", "STATUS")
|
||||
|
||||
for _, r := range rs {
|
||||
t.AddRow(r.Name, r.Status)
|
||||
t.AddRow(r.Name, r.Provider, r.Status)
|
||||
}
|
||||
|
||||
return t.Print()
|
||||
|
||||
@ -23,7 +23,7 @@ func TestRacksNone(t *testing.T) {
|
||||
require.Equal(t, 0, res.Code)
|
||||
res.RequireStderr(t, []string{""})
|
||||
res.RequireStdout(t, []string{
|
||||
"NAME STATUS",
|
||||
"NAME PROVIDER STATUS",
|
||||
})
|
||||
})
|
||||
}
|
||||
@ -37,8 +37,8 @@ func TestRacksLocal(t *testing.T) {
|
||||
require.Equal(t, 0, res.Code)
|
||||
res.RequireStderr(t, []string{""})
|
||||
res.RequireStdout(t, []string{
|
||||
"NAME STATUS ",
|
||||
"dev1 running",
|
||||
"NAME PROVIDER STATUS ",
|
||||
"dev1 local running",
|
||||
})
|
||||
})
|
||||
}
|
||||
@ -49,8 +49,8 @@ func TestRacksRemote(t *testing.T) {
|
||||
|
||||
r.HandleFunc("/racks", func(w http.ResponseWriter, r *http.Request) {
|
||||
w.Write([]byte(`[
|
||||
{"name":"foo","organization":{"name":"test"},"status":"running"},
|
||||
{"name":"other","organization":{"name":"test"},"status":"updating"}
|
||||
{"name":"foo","organization":{"name":"test"},"provider":"prov1","status":"running"},
|
||||
{"name":"other","organization":{"name":"test"},"provider":"prov2","status":"updating"}
|
||||
]`))
|
||||
}).Methods("GET")
|
||||
|
||||
@ -67,9 +67,9 @@ func TestRacksRemote(t *testing.T) {
|
||||
require.Equal(t, 0, res.Code)
|
||||
res.RequireStderr(t, []string{""})
|
||||
res.RequireStdout(t, []string{
|
||||
"NAME STATUS ",
|
||||
"test/foo running ",
|
||||
"test/other updating",
|
||||
"NAME PROVIDER STATUS ",
|
||||
"test/foo prov1 running ",
|
||||
"test/other prov2 updating",
|
||||
})
|
||||
})
|
||||
}
|
||||
@ -82,7 +82,7 @@ func TestRacksLocalAndRemote(t *testing.T) {
|
||||
|
||||
r.HandleFunc("/racks", func(w http.ResponseWriter, r *http.Request) {
|
||||
w.Write([]byte(`[
|
||||
{"name":"foo","organization":{"name":"test"},"status":"running"},
|
||||
{"name":"foo","organization":{"name":"test"},"provider":"prov1","status":"running"},
|
||||
{"name":"other","organization":{"name":"test"},"status":"updating"}
|
||||
]`))
|
||||
}).Methods("GET")
|
||||
@ -100,10 +100,10 @@ func TestRacksLocalAndRemote(t *testing.T) {
|
||||
require.Equal(t, 0, res.Code)
|
||||
res.RequireStderr(t, []string{""})
|
||||
res.RequireStdout(t, []string{
|
||||
"NAME STATUS ",
|
||||
"dev1 running ",
|
||||
"test/foo running ",
|
||||
"test/other updating",
|
||||
"NAME PROVIDER STATUS ",
|
||||
"dev1 local running ",
|
||||
"test/foo prov1 running ",
|
||||
"test/other unknown updating",
|
||||
})
|
||||
})
|
||||
}
|
||||
@ -134,7 +134,7 @@ func TestRacksError(t *testing.T) {
|
||||
require.Equal(t, 0, res.Code)
|
||||
res.RequireStderr(t, []string{""})
|
||||
res.RequireStdout(t, []string{
|
||||
"NAME STATUS",
|
||||
"NAME PROVIDER STATUS",
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user