-
Notifications
You must be signed in to change notification settings - Fork 21
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
container: support whiteouts #273
Comments
The lack of this is actually breaking coreos/layering-examples@3118caf
|
cgwalters
added a commit
to cgwalters/ostree-rs-ext
that referenced
this issue
Aug 25, 2022
A long time ago, in a galaxy far far away, a few of us in the ostree space did some initial work on Docker-related things; specifically support for whiteouts landed in ostreedev/ostree@baaf745 I wish at that time we'd realized how we could more natively support fetching containers; but, it never occurred to me to fork off skopeo to do all the heavy lifting for the *fetch* side, which would have been a lot of work to reimplement particularly in C. Oh well, better late than never! Anyways, that whiteout processing was only designed to happen at checkout time - i.e. when materializing the final filesystem tree. I think this was actually a misdesign and we should add `ostree_mutable_tree_write_with_whiteouts` so that the whiteouts are processed in-memory. However for now, there's a relatively low cost to temporarily materializing the merged tree via hardlinks and handle whiteouts via the existing code, so let's do that. Closes: ostreedev#273
cgwalters
added a commit
to cgwalters/ostree-rs-ext
that referenced
this issue
Aug 25, 2022
A long time ago, in a galaxy far far away, a few of us in the ostree space did some initial work on Docker-related things; specifically support for whiteouts landed in ostreedev/ostree@baaf745 I wish at that time we'd realized how we could more natively support fetching containers; but, it never occurred to me to fork off skopeo to do all the heavy lifting for the *fetch* side, which would have been a lot of work to reimplement particularly in C. Oh well, better late than never! Anyways, that whiteout processing was only designed to happen at checkout time - i.e. when materializing the final filesystem tree. I think this was actually a misdesign and we should add `ostree_mutable_tree_write_with_whiteouts` so that the whiteouts are processed in-memory. However for now, there's a relatively low cost to temporarily materializing the merged tree via hardlinks and handle whiteouts via the existing code, so let's do that. Closes: ostreedev#273
cgwalters
added a commit
to cgwalters/ostree-rs-ext
that referenced
this issue
Aug 25, 2022
A long time ago, in a galaxy far far away, a few of us in the ostree space did some initial work on Docker-related things; specifically support for whiteouts landed in ostreedev/ostree@baaf745 I wish at that time we'd realized how we could more natively support fetching containers; but, it never occurred to me to fork off skopeo to do all the heavy lifting for the *fetch* side, which would have been a lot of work to reimplement particularly in C. Oh well, better late than never! Anyways, that whiteout processing was only designed to happen at checkout time - i.e. when materializing the final filesystem tree. I think this was actually a misdesign and we should add `ostree_mutable_tree_write_with_whiteouts` so that the whiteouts are processed in-memory. However for now, there's a relatively low cost to temporarily materializing the merged tree via hardlinks and handle whiteouts via the existing code, so let's do that. Closes: ostreedev#273
cgwalters
added a commit
to cgwalters/ostree-rs-ext
that referenced
this issue
Aug 26, 2022
A long time ago, in a galaxy far far away, a few of us in the ostree space did some initial work on Docker-related things; specifically support for whiteouts landed in ostreedev/ostree@baaf745 I wish at that time we'd realized how we could more natively support fetching containers; but, it never occurred to me to fork off skopeo to do all the heavy lifting for the *fetch* side, which would have been a lot of work to reimplement particularly in C. Oh well, better late than never! Anyways, that whiteout processing was only designed to happen at checkout time - i.e. when materializing the final filesystem tree. I think this was actually a misdesign and we should add `ostree_mutable_tree_write_with_whiteouts` so that the whiteouts are processed in-memory. However for now, there's a relatively low cost to temporarily materializing the merged tree via hardlinks and handle whiteouts via the existing code, so let's do that. Closes: ostreedev#273
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The use case for removing stuff is in general IMO pretty weak, but it's going to confuse people and break things until we honor whiteouts on the container side.
e.g.
Or just e.g.:
The text was updated successfully, but these errors were encountered: