repo: Add ostree_repo_write_regfile
This API is push rather than pull, which makes it much more suitable to use cases like parsing a tar file from external code. Now, we have a large mess in this area internally because the original file writing code was pull based, but static deltas hit the same problem of wanting a push API, so I added this special `OstreeRepoBareContent` just for writing regular files from a push API. Eventually...I'd like to deprecate the pull based API, and rework things so that for regular files the push API is the default, and then `write_content_object()` would be split up into archive/bare cases. In this world the `ostree_repo_write_content()` API would then need to hackily bridge pull to push and it'd be less efficient. Anyways for now due to this bifurcation, this API only works on non-archive repositories, but that's fine for now because that's what I want for the `ostree-ext-container` bits.
This commit is contained in:
1 parent
020f6cb652
commit
6f84aff0ae
11 files changed
+282
-8
No files matched your search
@@ -462,6 +462,16 @@ _ostree_repo_bare_content_commit (OstreeRepo *self,
|
||||
GCancellable *cancellable,
|
||||
GError **error);
|
||||
|
||||
OstreeContentWriter *
|
||||
_ostree_content_writer_new (OstreeRepo *repo,
|
||||
const char *checksum,
|
||||
guint uid,
|
||||
guint gid,
|
||||
guint mode,
|
||||
guint64 content_len,
|
||||
GVariant *xattrs,
|
||||
GError **error);
|
||||
|
||||
gboolean
|
||||
_ostree_repo_load_file_bare (OstreeRepo *self,
|
||||
const char *checksum,
|
||||
|
||||
Reference in new issue
Block a user