lib/repo: Add min-free-space-size option
Similar to min-free-space-percent but it supports specific sizes (in MB, GB or TB). Also, making min-free-space-percent and -size mutually exclusive. min-free-space-percent does not give a fine tuning of the free disk space that a user might decide to keep. It can translate to very large size (e.g. 1% = ~10GB on 1TB HDD) or very small (e.g. 1% = ~330MB on 32GB system like Endless devices). Hence, it makes sense to introduce a config option to honor specific size as per the user. Closes: #1616 Approved by: jlebon
This commit is contained in:
1 parent
c767f7b739
commit
31809d32f2
5 files changed
+132
-19
No files matched your search
@@ -16,12 +16,27 @@ blkdev=$(losetup --find --show $(pwd)/testblk.img)
|
||||
mkfs.xfs ${blkdev}
|
||||
mkdir mnt
|
||||
mount ${blkdev} mnt
|
||||
|
||||
# first test min-free-space-percent
|
||||
ostree --repo=mnt/repo init --mode=bare-user
|
||||
echo 'fsync=false' >> mnt/repo/config
|
||||
if ostree --repo=mnt/repo pull-local /ostree/repo ${host_commit} 2>err.txt; then
|
||||
fatal "succeeded in doing a pull with no free space"
|
||||
fi
|
||||
assert_file_has_content err.txt "min-free-space-percent"
|
||||
echo "ok min-free-space-percent"
|
||||
|
||||
# now test min-free-space-size
|
||||
rm -rf mnt/repo
|
||||
ostree --repo=mnt/repo init --mode=bare-user
|
||||
echo 'fsync=false' >> mnt/repo/config
|
||||
echo 'min-free-space-size=10MB' >> mnt/repo/config
|
||||
if ostree --repo=mnt/repo pull-local /ostree/repo ${host_commit} 2>err.txt; then
|
||||
fatal "succeeded in doing a pull with no free space"
|
||||
fi
|
||||
assert_file_has_content err.txt "min-free-space-size"
|
||||
echo "ok min-free-space-size"
|
||||
|
||||
umount mnt
|
||||
losetup -d ${blkdev}
|
||||
date
|
||||
Reference in new issue
Block a user