deltas: Use endianness marker when parsing
Extend the `static-delta show` and `pull` commands to use the endianness information (if available).
This commit is contained in:
1 parent
277220aaa6
commit
04d77da005
7 files changed
+201
-36
No files matched your search
+17
-2
@@ -113,8 +113,8 @@ ostree --repo=ostree-srv/gnomerepo summary -u
|
||||
cd ${test_tmpdir}
|
||||
repo_init
|
||||
${CMD_PREFIX} ostree --repo=repo pull origin main@${prev_rev}
|
||||
${CMD_PREFIX} ostree --repo=repo pull --dry-run --require-static-deltas origin main >out.txt
|
||||
assert_file_has_content out.txt 'Delta update: 0/1 parts'
|
||||
${CMD_PREFIX} ostree --repo=repo pull --dry-run --require-static-deltas origin main >dry-run-pull.txt
|
||||
assert_file_has_content dry-run-pull.txt 'Delta update: 0/1 parts'
|
||||
rev=$(${CMD_PREFIX} ostree --repo=repo rev-parse origin:main)
|
||||
assert_streq "${prev_rev}" "${rev}"
|
||||
${CMD_PREFIX} ostree --repo=repo fsck
|
||||
@@ -142,6 +142,21 @@ assert_not_has_file baz/saucer
|
||||
|
||||
echo "ok static delta"
|
||||
|
||||
cd ${test_tmpdir}
|
||||
${CMD_PREFIX} ostree --repo=ostree-srv/gnomerepo static-delta generate --swap-endianness main
|
||||
${CMD_PREFIX} ostree --repo=ostree-srv/gnomerepo summary -u
|
||||
|
||||
repo_init
|
||||
${CMD_PREFIX} ostree --repo=repo pull origin main@${prev_rev}
|
||||
${CMD_PREFIX} ostree --repo=repo pull --require-static-deltas --dry-run origin main >byteswapped-dry-run-pull.txt
|
||||
${CMD_PREFIX} ostree --repo=repo fsck
|
||||
|
||||
if ! diff -u dry-run-pull.txt byteswapped-dry-run-pull.txt; then
|
||||
assert_not_reached "byteswapped delta differs in size"
|
||||
fi
|
||||
|
||||
echo "ok pull byteswapped delta"
|
||||
|
||||
cd ${test_tmpdir}
|
||||
rm ostree-srv/gnomerepo/deltas -rf
|
||||
ostree --repo=ostree-srv/gnomerepo summary -u
|
||||
|
||||
@@ -119,6 +119,15 @@ assert_file_has_content show.txt 'Endianness: \(little\|big\)'
|
||||
|
||||
echo 'ok show'
|
||||
|
||||
${CMD_PREFIX} ostree --repo=repo static-delta generate --swap-endianness --from=${origrev} --to=${newrev}
|
||||
${CMD_PREFIX} ostree --repo=repo static-delta show ${origrev}-${newrev} > show-swapped.txt
|
||||
totalsize_orig=$(grep 'Total Size:' show.txt)
|
||||
totalsize_swapped=$(grep 'Total Size:' show-swapped.txt)
|
||||
assert_not_streq "${totalsize_orig}" ""
|
||||
assert_streq "${totalsize_orig}" "${totalsize_swapped}"
|
||||
|
||||
echo 'ok generate + show endian swapped'
|
||||
|
||||
mkdir repo2 && ${CMD_PREFIX} ostree --repo=repo2 init --mode=archive-z2
|
||||
${CMD_PREFIX} ostree --repo=repo2 pull-local repo ${newrev}
|
||||
${CMD_PREFIX} ostree --repo=repo2 fsck
|
||||
|
||||
Reference in new issue
Block a user