-
Notifications
You must be signed in to change notification settings - Fork 18.7k
c8d: Add image events #46405
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
c8d: Add image events #46405
Conversation
Signed-off-by: Djordje Lukic <djordje.lukic@docker.com>
Signed-off-by: Djordje Lukic <djordje.lukic@docker.com>
Signed-off-by: Djordje Lukic <djordje.lukic@docker.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@@ -113,6 +113,8 @@ func (i *ImageService) ExportImage(ctx context.Context, names []string, outStrea | ||
"target": target, | ||
}).Debug("export image without name") | ||
} | ||
|
||
i.LogImageEvent(target.Digest.String(), target.Digest.String(), events.ActionSave) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
SO confusing that it's "image expert", but actually "image save" 😞
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I had to check 3 times to make sure it's the right one...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The image is not exported at this point yet. We should log the events after Export
returns a nil error.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is the way graph drivers work too. Also you could export multiple images…
so it’s more “ready to export this image” rather than “this image was exported”
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh, right. That's weird though.. but if that's how it worked with the graphdrivers then it should stay that way. Sorry!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is weird. I’ll give you that. I even did what you said at one point but reverted. It would be too big of a change. Maybe we can fix this in a followup, fix both implementations if we think it’s useful
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, we should map what events we trigger "where" and with what information. Many of them where just added "willy-nilly" in the code, but not all were properly defined.
Should be slightly easier to find all locations now that we have the consts defined, but it could use some tweaking (and documenting) overall
@@ -113,6 +113,8 @@ func (i *ImageService) ExportImage(ctx context.Context, names []string, outStrea | ||
"target": target, | ||
}).Debug("export image without name") | ||
} | ||
|
||
i.LogImageEvent(target.Digest.String(), target.Digest.String(), events.ActionSave) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The image is not exported at this point yet. We should log the events after Export
returns a nil error.
- What I did
Added image events for
- How I did it
With my hands
- How to verify it
Change line 84 in
hack/make/.integration-test-helpers
to sayand run:
$ make DOCKER_GRAPHDRIVER=overlayfs TEST_FILTER=DockerCLIEventSuite TEST_INTEGRATION_USE_SNAPSHOTTER=1 test-integration
All the tests should pass.
- Description for the changelog
- A picture of a cute animal (not mandatory but encouraged)
Signed-off-by: Djordje Lukic djordje.lukic@docker.com