]>
Commit | Line | Data |
---|---|---|
111e30c0 FZ |
1 | #!/usr/bin/env python |
2 | # | |
3 | # FreeBSD VM image | |
4 | # | |
5 | # Copyright 2017 Red Hat Inc. | |
6 | # | |
7 | # Authors: | |
8 | # Fam Zheng <[email protected]> | |
9 | # | |
10 | # This code is licensed under the GPL version 2 or later. See | |
11 | # the COPYING file in the top-level directory. | |
12 | # | |
13 | ||
14 | import os | |
15 | import sys | |
16 | import subprocess | |
17 | import basevm | |
18 | ||
19 | class FreeBSDVM(basevm.BaseVM): | |
20 | name = "freebsd" | |
21 | BUILD_SCRIPT = """ | |
22 | set -e; | |
44b69d50 | 23 | rm -rf /var/tmp/qemu-test.* |
111e30c0 FZ |
24 | cd $(mktemp -d /var/tmp/qemu-test.XXXXXX); |
25 | tar -xf /dev/vtbd1; | |
26 | ./configure {configure_opts}; | |
f2d4becd PM |
27 | gmake --output-sync -j{jobs} {verbose}; |
28 | gmake --output-sync -j{jobs} check {verbose}; | |
111e30c0 FZ |
29 | """ |
30 | ||
31 | def build_image(self, img): | |
32 | cimg = self._download_with_cache("http://download.patchew.org/freebsd-11.1-amd64.img.xz", | |
33 | sha256sum='adcb771549b37bc63826c501f05121a206ed3d9f55f49145908f7e1432d65891') | |
34 | img_tmp_xz = img + ".tmp.xz" | |
35 | img_tmp = img + ".tmp" | |
36 | subprocess.check_call(["cp", "-f", cimg, img_tmp_xz]) | |
37 | subprocess.check_call(["xz", "-df", img_tmp_xz]) | |
38 | if os.path.exists(img): | |
39 | os.remove(img) | |
40 | os.rename(img_tmp, img) | |
41 | ||
42 | if __name__ == "__main__": | |
43 | sys.exit(basevm.main(FreeBSDVM)) |