mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-02 15:23:53 -06:00
libqos: add qemu-img presence check
To allow tests to optionally exercise additional tests that require the qemu-img tool that may not be present in all builds. Signed-off-by: John Snow <jsnow@redhat.com> Message-id: 1447439479-16775-3-git-send-email-jsnow@redhat.com
This commit is contained in:
parent
b236b61056
commit
cb11e7b2f3
2 changed files with 24 additions and 5 deletions
|
@ -147,6 +147,23 @@ void migrate(QOSState *from, QOSState *to, const char *uri)
|
|||
set_context(to);
|
||||
}
|
||||
|
||||
bool have_qemu_img(void)
|
||||
{
|
||||
char *rpath;
|
||||
const char *path = getenv("QTEST_QEMU_IMG");
|
||||
if (!path) {
|
||||
return false;
|
||||
}
|
||||
|
||||
rpath = realpath(path, NULL);
|
||||
if (!rpath) {
|
||||
return false;
|
||||
} else {
|
||||
free(rpath);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
void mkimg(const char *file, const char *fmt, unsigned size_mb)
|
||||
{
|
||||
gchar *cli;
|
||||
|
@ -155,13 +172,14 @@ void mkimg(const char *file, const char *fmt, unsigned size_mb)
|
|||
GError *err = NULL;
|
||||
char *qemu_img_path;
|
||||
gchar *out, *out2;
|
||||
char *abs_path;
|
||||
char *qemu_img_abs_path;
|
||||
|
||||
qemu_img_path = getenv("QTEST_QEMU_IMG");
|
||||
abs_path = realpath(qemu_img_path, NULL);
|
||||
assert(qemu_img_path);
|
||||
g_assert(qemu_img_path);
|
||||
qemu_img_abs_path = realpath(qemu_img_path, NULL);
|
||||
g_assert(qemu_img_abs_path);
|
||||
|
||||
cli = g_strdup_printf("%s create -f %s %s %uM", abs_path,
|
||||
cli = g_strdup_printf("%s create -f %s %s %uM", qemu_img_abs_path,
|
||||
fmt, file, size_mb);
|
||||
ret = g_spawn_command_line_sync(cli, &out, &out2, &rc, &err);
|
||||
if (err) {
|
||||
|
@ -183,7 +201,7 @@ void mkimg(const char *file, const char *fmt, unsigned size_mb)
|
|||
g_free(out);
|
||||
g_free(out2);
|
||||
g_free(cli);
|
||||
free(abs_path);
|
||||
free(qemu_img_abs_path);
|
||||
}
|
||||
|
||||
void mkqcow2(const char *file, unsigned size_mb)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue