Skip to content

Commit

Permalink
Merge pull request #15487 from mheon/image_delete_event
Browse files Browse the repository at this point in the history
Compat API image remove events now have 'delete' status
  • Loading branch information
openshift-merge-robot authored Aug 26, 2022
2 parents 36cf6f5 + c7fda06 commit ac3d9c6
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 0 deletions.
6 changes: 6 additions & 0 deletions pkg/api/handlers/compat/events.go
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,12 @@ func GetEvents(w http.ResponseWriter, r *http.Request) {
}

e := entities.ConvertToEntitiesEvent(*evt)
// Some events differ between Libpod and Docker endpoints.
// Handle these differences for Docker-compat.
if !utils.IsLibpodRequest(r) && e.Type == "image" && e.Status == "remove" {
e.Status = "delete"
e.Action = "delete"
}
if !utils.IsLibpodRequest(r) && e.Status == "died" {
e.Status = "die"
e.Action = "die"
Expand Down
19 changes: 19 additions & 0 deletions test/apiv2/10-images.at
Original file line number Diff line number Diff line change
Expand Up @@ -239,4 +239,23 @@ fi

cleanBuildTest

# compat API vs libpod API event differences:
# on image removal, libpod produces 'remove' events.
# compat produces 'delete' events.
podman image build -t test:test -<<EOF
from $IMAGE
EOF

START=$(date +%s)

t DELETE libpod/images/test:test 200
# HACK HACK HACK There is a race around events being added to the journal
# This sleep seems to avoid the race.
# If it fails and begins to flake, investigate a retry loop.
sleep 1
t GET "libpod/events?stream=false&since=$START" 200 \
'select(.status | contains("remove")).Action=remove'
t GET "events?stream=false&since=$START" 200 \
'select(.status | contains("delete")).Action=delete'

# vim: filetype=sh

0 comments on commit ac3d9c6

Please sign in to comment.