mirror of
https://github.com/containers/podman.git
synced 2025-06-25 20:26:51 +08:00
Merge pull request #9320 from baude/issue9315
container ps json format miscue
This commit is contained in:
@ -142,11 +142,19 @@ func checkFlags(c *cobra.Command) error {
|
||||
}
|
||||
|
||||
func jsonOut(responses []entities.ListContainer) error {
|
||||
r := make([]entities.ListContainer, 0)
|
||||
type jsonFormat struct {
|
||||
entities.ListContainer
|
||||
Created int64
|
||||
}
|
||||
r := make([]jsonFormat, 0)
|
||||
for _, con := range responses {
|
||||
con.CreatedAt = units.HumanDuration(time.Since(con.Created)) + " ago"
|
||||
con.Status = psReporter{con}.Status()
|
||||
r = append(r, con)
|
||||
jf := jsonFormat{
|
||||
ListContainer: con,
|
||||
Created: con.Created.UnixNano(),
|
||||
}
|
||||
r = append(r, jf)
|
||||
}
|
||||
b, err := json.MarshalIndent(r, "", " ")
|
||||
if err != nil {
|
||||
|
@ -5,6 +5,7 @@ import (
|
||||
"os"
|
||||
"regexp"
|
||||
"sort"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
. "github.com/containers/podman/v2/test/utils"
|
||||
@ -210,6 +211,22 @@ var _ = Describe("Podman ps", func() {
|
||||
Expect(result.IsJSONOutputValid()).To(BeTrue())
|
||||
})
|
||||
|
||||
It("podman ps json format Created field is int64", func() {
|
||||
session := podmanTest.RunTopContainer("test1")
|
||||
session.WaitWithDefaultTimeout()
|
||||
Expect(session.ExitCode()).To(Equal(0))
|
||||
|
||||
result := podmanTest.Podman([]string{"ps", "--format", "json"})
|
||||
result.WaitWithDefaultTimeout()
|
||||
Expect(result.ExitCode()).To(Equal(0))
|
||||
|
||||
// Make sure Created field is an int64
|
||||
created, err := result.jq(".[0].Created")
|
||||
Expect(err).To(BeNil())
|
||||
_, err = strconv.ParseInt(created, 10, 64)
|
||||
Expect(err).To(BeNil())
|
||||
})
|
||||
|
||||
It("podman ps print a human-readable `Status` with json format", func() {
|
||||
_, ec, _ := podmanTest.RunLsContainer("test1")
|
||||
Expect(ec).To(Equal(0))
|
||||
|
Reference in New Issue
Block a user