Message ID | 1242057061-26755-1-git-send-email-mburns@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi Mike On Mon, 2009-05-11 at 11:51 -0400, Mike Burns wrote: > From: Michael Burns <mburns@redhat.com> The comments I had to make were pretty much covered by Eduardo and Mike Goldish... 1 - We should support passing parameters by both environment variables and command line arguments 2 - test.bindir sounds like a better choice of path than the env variable AUTODIR > > Signed-off-by: Michael Burns <mburns@redhat.com> > --- > client/tests/kvm_runtest_2/control | 17 ++++++++++++++++- > client/tests/kvm_runtest_2/kvm_install.py | 13 +++++++++++++ > 2 files changed, 29 insertions(+), 1 deletions(-) > > diff --git a/client/tests/kvm_runtest_2/control b/client/tests/kvm_runtest_2/control > index fd68e94..5d022b5 100644 > --- a/client/tests/kvm_runtest_2/control > +++ b/client/tests/kvm_runtest_2/control > @@ -41,6 +41,18 @@ link_if_not_exist(pwd, qemu_img, 'qemu-img') > > # --------------------- > # Build and install kvm > +# > +# Details of Install options > +# Mode: custom > +# Description: install from custom install script > +# Parameters needed: > +# install_script: > +# location of script relative to the > +# kvm-autotest/client directory > +# Note: For custom parameters for your script, define them as params below. > +# They will be available as KVM_INSTALL_<name> in the OS environment > +# Example: install_script will be available as KVM_INSTALL_install_script > +# > # --------------------- > params = { > "name": "kvm_install", > @@ -57,7 +69,10 @@ params = { > > ## Install from git > "git_repo": 'git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm.git', > - "user_git_repo": 'git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm-userspace.git' > + "user_git_repo": 'git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm-userspace.git', > + > + ## Custom install > + "install_script": 'tests/kvm_runtest_2/custom_kvm_install.sh' > } > > # Comment the job.run_test line if you do not want to install kvm on the host. > diff --git a/client/tests/kvm_runtest_2/kvm_install.py b/client/tests/kvm_runtest_2/kvm_install.py > index 8be5a93..bb664b3 100755 > --- a/client/tests/kvm_runtest_2/kvm_install.py > +++ b/client/tests/kvm_runtest_2/kvm_install.py > @@ -77,6 +77,19 @@ def run_kvm_install(test, params, env): > elif install_mode == "localsrc": > __install_kvm(test, srcdir) > > + # install from custom script > + elif install_mode == "custom": > + install_script = params.get("install_script") > + script = os.path.join(os.environ['AUTODIR'],install_script) > + if not install_script: > + message = "Custom script filename not specified" > + kvm_log.error(message) > + raise error.TestError, message > + for k in params.keys(): > + os.putenv("KVM_INSTALL_%s" % (k), str(params[k])) > + kvm_log.info("Running " + script + " to install kvm") > + os.system(script) > + > # invalid installation mode > else: > message = "Invalid installation mode: '%s'" % install_mode Lucas -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/client/tests/kvm_runtest_2/control b/client/tests/kvm_runtest_2/control index fd68e94..5d022b5 100644 --- a/client/tests/kvm_runtest_2/control +++ b/client/tests/kvm_runtest_2/control @@ -41,6 +41,18 @@ link_if_not_exist(pwd, qemu_img, 'qemu-img') # --------------------- # Build and install kvm +# +# Details of Install options +# Mode: custom +# Description: install from custom install script +# Parameters needed: +# install_script: +# location of script relative to the +# kvm-autotest/client directory +# Note: For custom parameters for your script, define them as params below. +# They will be available as KVM_INSTALL_<name> in the OS environment +# Example: install_script will be available as KVM_INSTALL_install_script +# # --------------------- params = { "name": "kvm_install", @@ -57,7 +69,10 @@ params = { ## Install from git "git_repo": 'git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm.git', - "user_git_repo": 'git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm-userspace.git' + "user_git_repo": 'git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm-userspace.git', + + ## Custom install + "install_script": 'tests/kvm_runtest_2/custom_kvm_install.sh' } # Comment the job.run_test line if you do not want to install kvm on the host. diff --git a/client/tests/kvm_runtest_2/kvm_install.py b/client/tests/kvm_runtest_2/kvm_install.py index 8be5a93..bb664b3 100755 --- a/client/tests/kvm_runtest_2/kvm_install.py +++ b/client/tests/kvm_runtest_2/kvm_install.py @@ -77,6 +77,19 @@ def run_kvm_install(test, params, env): elif install_mode == "localsrc": __install_kvm(test, srcdir) + # install from custom script + elif install_mode == "custom": + install_script = params.get("install_script") + script = os.path.join(os.environ['AUTODIR'],install_script) + if not install_script: + message = "Custom script filename not specified" + kvm_log.error(message) + raise error.TestError, message + for k in params.keys(): + os.putenv("KVM_INSTALL_%s" % (k), str(params[k])) + kvm_log.info("Running " + script + " to install kvm") + os.system(script) + # invalid installation mode else: message = "Invalid installation mode: '%s'" % install_mode