From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lucas Meneghel Rodrigues Subject: Re: [PATCH][KVM-AUTOTEST] Add custom install option for kvm_install Date: Mon, 11 May 2009 15:52:55 -0300 Message-ID: <1242067975.2720.17.camel@localhost.localdomain> References: <1242057061-26755-1-git-send-email-mburns@redhat.com> Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: 7bit Cc: kvm@vger.kernel.org, ulublin@redhat.com To: Mike Burns Return-path: Received: from mx2.redhat.com ([66.187.237.31]:53656 "EHLO mx2.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752711AbZEKSw6 (ORCPT ); Mon, 11 May 2009 14:52:58 -0400 Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26]) by mx2.redhat.com (8.13.8/8.13.8) with ESMTP id n4BIqwnb001368 for ; Mon, 11 May 2009 14:52:58 -0400 In-Reply-To: <1242057061-26755-1-git-send-email-mburns@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: Hi Mike On Mon, 2009-05-11 at 11:51 -0400, Mike Burns wrote: > From: Michael Burns 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 > --- > 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_ 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