~smoser/ubuntu/bionic/cloud-utils/pkg

« back to all changes in this revision

Viewing changes to .pc/sync-to-trunk.patch/test/test-growpart-fsimage

  • Committer: Scott Moser
  • Date: 2016-10-24 18:10:27 UTC
  • Revision ID: smoser@ubuntu.com-20161024181027-0mdada0ntv4nu1mj
fix state of directory, that was just wrong.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/bin/bash
 
2
#
 
3
# Just create an image in the filesystem, then grow it.
 
4
 
 
5
set -e
 
6
 
 
7
TEMP_D=""
 
8
 
 
9
rq() {
 
10
   local out="${TEMP_D}/out"
 
11
        "$@" > "$out" 2>&1 || { echo "FAILED:" "$@"; cat "$out"; return 1; }
 
12
}
 
13
 
 
14
cleanup() {
 
15
        [ -z "$MP" ] || { echo "unmount $MP"; umount "$MP"; }
 
16
        if [ -n "$LODEV" ]; then
 
17
                clearparts "$LODEV"
 
18
                echo "losetup --detach $LODEV";
 
19
                losetup --detach "$LODEV";
 
20
        fi
 
21
        [ ! -d "${TEMP_D}" ] || rm -Rf "${TEMP_D}"
 
22
}
 
23
TEMP_D=$(mktemp -d ${TMPDIR:-/tmp}/${0##*/}.XXXXXX)
 
24
trap cleanup EXIT
 
25
 
 
26
img="${TEMP_D}/disk.img"
 
27
mp="${TEMP_D}/mp"
 
28
 
 
29
size=1000M
 
30
osize=500M
 
31
rm -f $img
 
32
 
 
33
truncate --size $osize "$img"
 
34
 
 
35
if [ "${PT_TYPE}" = "gpt" ]; then
 
36
        rq sgdisk --new 1:2048: "$img"
 
37
else
 
38
        echo "2048," | rq sfdisk --force --unit=S "$img"
 
39
fi
 
40
 
 
41
truncate --size "$size" "$img"
 
42
 
 
43
echo "==== before ===="
 
44
sfdisk --list --unit=S "$img"
 
45
 
 
46
err="${TEMP_D}/gp.err"
 
47
out="${TEMP_D}/gp.out"
 
48
if ! growpart -v -v "$img" 1 2>"$err" > "$out"; then
 
49
    cat "$err" "$out"
 
50
    echo "failed"
 
51
    exit 1
 
52
fi
 
53
echo "==== growpart-stderr ==="
 
54
cat "$err"
 
55
echo "==== growpart-stdout ===="
 
56
cat "$out"
 
57
grep -q "^CHANGED:" "$out" ||
 
58
   { echo "did not find 'CHANGED'"; exit 1; }
 
59
 
 
60
echo "==== after ===="
 
61
sfdisk --list --unit=S "$img"