In CI, determine loop devices dynamically to avoid conflicts with Ubuntu snaps
Introduced when updating CI to Ubuntu 20.04, Ubuntu snaps consume loop devices, which conflict with out assumption that /dev/loop0 will always be unused. Changed to request a dynamic loop device from losetup, though it would have been nice if Ubuntu snaps allocated from the last device or something.
This commit is contained in:
+14
-10
@@ -311,16 +311,18 @@ jobs:
|
|||||||
|
|
||||||
# setup disk for littlefs-fuse
|
# setup disk for littlefs-fuse
|
||||||
mkdir mount
|
mkdir mount
|
||||||
sudo chmod a+rw /dev/loop0
|
LOOP=$(sudo losetup -f)
|
||||||
|
sudo chmod a+rw $LOOP
|
||||||
dd if=/dev/zero bs=512 count=128K of=disk
|
dd if=/dev/zero bs=512 count=128K of=disk
|
||||||
losetup /dev/loop0 disk
|
losetup $LOOP disk
|
||||||
|
echo "LOOP=$LOOP" >> $GITHUB_ENV
|
||||||
- name: test
|
- name: test
|
||||||
run: |
|
run: |
|
||||||
# self-host test
|
# self-host test
|
||||||
make -C littlefs-fuse
|
make -C littlefs-fuse
|
||||||
|
|
||||||
littlefs-fuse/lfs --format /dev/loop0
|
littlefs-fuse/lfs --format $LOOP
|
||||||
littlefs-fuse/lfs /dev/loop0 mount
|
littlefs-fuse/lfs $LOOP mount
|
||||||
|
|
||||||
ls mount
|
ls mount
|
||||||
mkdir mount/littlefs
|
mkdir mount/littlefs
|
||||||
@@ -362,9 +364,11 @@ jobs:
|
|||||||
|
|
||||||
# setup disk for littlefs-fuse
|
# setup disk for littlefs-fuse
|
||||||
mkdir mount
|
mkdir mount
|
||||||
sudo chmod a+rw /dev/loop0
|
LOOP=$(sudo losetup -f)
|
||||||
|
sudo chmod a+rw $LOOP
|
||||||
dd if=/dev/zero bs=512 count=128K of=disk
|
dd if=/dev/zero bs=512 count=128K of=disk
|
||||||
losetup /dev/loop0 disk
|
losetup $LOOP disk
|
||||||
|
echo "LOOP=$LOOP" >> $GITHUB_ENV
|
||||||
- name: test
|
- name: test
|
||||||
run: |
|
run: |
|
||||||
# compile v1 and v2
|
# compile v1 and v2
|
||||||
@@ -372,8 +376,8 @@ jobs:
|
|||||||
make -C v2
|
make -C v2
|
||||||
|
|
||||||
# run self-host test with v1
|
# run self-host test with v1
|
||||||
v1/lfs --format /dev/loop0
|
v1/lfs --format $LOOP
|
||||||
v1/lfs /dev/loop0 mount
|
v1/lfs $LOOP mount
|
||||||
|
|
||||||
ls mount
|
ls mount
|
||||||
mkdir mount/littlefs
|
mkdir mount/littlefs
|
||||||
@@ -387,8 +391,8 @@ jobs:
|
|||||||
cd ../..
|
cd ../..
|
||||||
fusermount -u mount
|
fusermount -u mount
|
||||||
|
|
||||||
v2/lfs --migrate /dev/loop0
|
v2/lfs --migrate $LOOP
|
||||||
v2/lfs /dev/loop0 mount
|
v2/lfs $LOOP mount
|
||||||
|
|
||||||
# run self-host test with v2 right where we left off
|
# run self-host test with v2 right where we left off
|
||||||
ls mount
|
ls mount
|
||||||
|
|||||||
Reference in New Issue
Block a user