aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel J Walsh <dwalsh@redhat.com>2022-04-27 10:39:47 -0400
committerMatthew Heon <matthew.heon@pm.me>2022-05-03 13:32:28 -0400
commit4ff6884fb85d8a95f5a90848e92c3ff9ea6bcf57 (patch)
tree959affa3f08acfb45849e82708bfc57ae1398f01
parent3226561cf3960d76aa633daf134dbfc3ec9e7fa6 (diff)
downloadpodman-4ff6884fb85d8a95f5a90848e92c3ff9ea6bcf57.tar.gz
podman-4ff6884fb85d8a95f5a90848e92c3ff9ea6bcf57.tar.bz2
podman-4ff6884fb85d8a95f5a90848e92c3ff9ea6bcf57.zip
Add CreatedSince & CreatedAt format fields to podman image history
Fixes: https://github.com/containers/podman/issues/14012 Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
-rw-r--r--cmd/podman/images/history.go8
-rw-r--r--docs/source/markdown/podman-history.1.md9
-rw-r--r--test/system/110-history.bats13
3 files changed, 26 insertions, 4 deletions
diff --git a/cmd/podman/images/history.go b/cmd/podman/images/history.go
index c05d3475b..26a4b6c3b 100644
--- a/cmd/podman/images/history.go
+++ b/cmd/podman/images/history.go
@@ -168,3 +168,11 @@ func (h historyReporter) ID() string {
}
return h.ImageHistoryLayer.ID
}
+
+func (h historyReporter) CreatedAt() string {
+ return time.Unix(h.ImageHistoryLayer.Created.Unix(), 0).UTC().String()
+}
+
+func (h historyReporter) CreatedSince() string {
+ return h.Created()
+}
diff --git a/docs/source/markdown/podman-history.1.md b/docs/source/markdown/podman-history.1.md
index af35814c2..16f1e48e6 100644
--- a/docs/source/markdown/podman-history.1.md
+++ b/docs/source/markdown/podman-history.1.md
@@ -23,10 +23,11 @@ Valid placeholders for the Go template are listed below:
| --------------- | ----------------------------------------------------------------------------- |
| .ID | Image ID |
| .Created | if --human, time elapsed since creation, otherwise time stamp of creation |
-| .CreatedBy | Command used to create the layer |
-| .Size | Size of layer on disk |
-| .Comment | Comment for the layer |
-
+| .CreatedAt | Time when the image layer was created |
+| .CreatedBy | Command used to create the layer |
+| .CreatedSince | Elapsed time since the image layer was created |
+| .Size | Size of layer on disk |
+| .Comment | Comment for the layer |
## OPTIONS
Print the numeric IDs only (default *false*).
diff --git a/test/system/110-history.bats b/test/system/110-history.bats
index 0f6d75cb3..da6f2177c 100644
--- a/test/system/110-history.bats
+++ b/test/system/110-history.bats
@@ -55,4 +55,17 @@ size | -\\\?[0-9]\\\+
}
+@test "podman image history Created" {
+ # Values from image LIST
+ run_podman image list --format '{{.CreatedSince}}--{{.CreatedAt}}' $IMAGE
+ from_imagelist="$output"
+ assert "$from_imagelist" =~ "^[0-9].* ago--[0-9]+-[0-9]+-[0-9]+ [0-9:]+ " \
+ "CreatedSince and CreatedAt look reasonable"
+
+ # Values from image HISTORY
+ run_podman image history --format '{{.CreatedSince}}--{{.CreatedAt}}' $IMAGE
+ assert "${lines[0]}" == "$from_imagelist" \
+ "CreatedSince and CreatedAt from image history should == image list"
+}
+
# vim: filetype=sh