From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id 56136B54D for ; Sun, 15 Feb 2015 09:53:36 +0100 (CET) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga103.jf.intel.com with ESMTP; 15 Feb 2015 00:48:22 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.09,580,1418112000"; d="scan'208";a="685951684" Received: from pgsmsx106.gar.corp.intel.com ([10.221.44.98]) by orsmga002.jf.intel.com with ESMTP; 15 Feb 2015 00:53:33 -0800 Received: from shsmsx101.ccr.corp.intel.com (10.239.4.153) by PGSMSX106.gar.corp.intel.com (10.221.44.98) with Microsoft SMTP Server (TLS) id 14.3.195.1; Sun, 15 Feb 2015 16:53:32 +0800 Received: from shsmsx103.ccr.corp.intel.com ([169.254.4.197]) by SHSMSX101.ccr.corp.intel.com ([169.254.1.192]) with mapi id 14.03.0195.001; Sun, 15 Feb 2015 16:53:31 +0800 From: "Liu, Yong" To: "Qiu, Michael" , "dts@dpdk.org" Thread-Topic: [dts] [PATCH 2/2 v2] framework: make option -d to absolute path Thread-Index: AQHQSPtBP2WsY2oJxkusxZGDtg4SIJzxZcuQ Date: Sun, 15 Feb 2015 08:53:29 +0000 Message-ID: <86228AFD5BCD8E4EBFD2B90117B5E81E10D7CF3D@SHSMSX103.ccr.corp.intel.com> References: <1423982583-6086-1-git-send-email-michael.qiu@intel.com> <1423989691-11612-1-git-send-email-michael.qiu@intel.com> In-Reply-To: <1423989691-11612-1-git-send-email-michael.qiu@intel.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dts] [PATCH 2/2 v2] framework: make option -d to absolute path X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 Feb 2015 08:53:37 -0000 Michael, need small fix for pep8 check. > -----Original Message----- > From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of Michael Qiu > Sent: Sunday, February 15, 2015 4:42 PM > To: dts@dpdk.org > Subject: [dts] [PATCH 2/2 v2] framework: make option -d to absolute path >=20 > Option -d is used for dpdk directory name, which is not suitable. >=20 > Meanwhile, dts need make dpdk location in DUT more flexable. >=20 > Specify the absolute path with -d option to solve the issue. >=20 > Signed-off-by: Michael Qiu > --- > framework/main.py | 22 +++++++++++----------- > framework/project_dpdk.py | 36 ++++++++++++++++++++++++++++++------ > framework/ssh_connection.py | 2 +- > 3 files changed, 42 insertions(+), 18 deletions(-) >=20 > diff --git a/framework/main.py b/framework/main.py > index 0223f57..11b7513 100755 > --- a/framework/main.py > +++ b/framework/main.py > @@ -43,23 +43,23 @@ import dts > os.chdir("../") >=20 >=20 > -def git_build_package(gitLabel, gitPkg, output): > +def git_build_package(gitLabel, pkgName, depot=3D"dep"): > """ > generate package from git, if dpdk existed will pull latest code > """ > gitURL =3D r"http://dpdk.org/git/dpdk" > gitPrefix =3D r"dpdk/" > - if os.path.exists("%s/%s" % (output, gitPrefix)) is True: > - ret =3D os.system("cd %s/%s && git pull --force" % (output, > gitPrefix)) > + if os.path.exists("%s/%s" % (depot, gitPrefix)) is True: > + ret =3D os.system("cd %s/%s && git pull --force" % (depot, > gitPrefix)) > else: > - print "git clone %s %s/%s" % (gitURL, output, gitPrefix) > - ret =3D os.system("git clone %s output/%s" % (gitURL, gitPrefix)= ) > + print "git clone %s %s/%s" % (gitURL, depot, gitPrefix) > + ret =3D os.system("git clone %s %s/%s" % (gitURL, depot, gitPref= ix)) > if ret is not 0: > raise EnvironmentError >=20 > - print "git archive --format=3Dtar.gz --prefix=3D%s %s -o %s" % (gitP= refix, > gitLabel, gitPkg) > - ret =3D os.system("cd %s/%s && git archive --format=3Dtar.gz -- > prefix=3D%s/ %s -o ../../%s" > - % (output, gitPrefix, gitPrefix, gitLabel, gitPkg)) > + print "git archive --format=3Dtar.gz --prefix=3D%s %s -o %s" % (gitP= refix, > gitLabel, pkgName) > + ret =3D os.system("cd %s/%s && git archive --format=3Dtar.gz -- > prefix=3D%s/ %s -o ../%s" > + % (depot, gitPrefix, gitPrefix, gitLabel, pkgName)) > if ret is not 0: > raise EnvironmentError >=20 > @@ -79,7 +79,7 @@ parser.add_argument('--patch', > help=3D'apply a patch to the package under test') >=20 > parser.add_argument('--snapshot', > - default=3D'dpdk.tar.gz', > + default=3D'dep/dpdk.tar.gz', > help=3D'snapshot .tgz file to use as input') >=20 > parser.add_argument('--output', > @@ -110,7 +110,7 @@ parser.add_argument('-t', '--test-cases', > help=3D'executes only the followings test cases') >=20 > parser.add_argument('-d', '--dir', > - default=3D'dpdk', > + default=3D'~/dpdk', > help=3D'Output directory where dpdk package is > extracted') >=20 > parser.add_argument('-v', '--verbose', > @@ -123,7 +123,7 @@ args =3D parser.parse_args() > # prepare DPDK source test package, DTS will exited when failed. > if args.git is not None: > try: > - git_build_package(args.git, args.snapshot, args.output) > + git_build_package(args.git, os.path.split(args.snapshot)[1]) > except Exception: > print "FAILED TO PREPARE DPDK PACKAGE!!!" > sys.exit() > diff --git a/framework/project_dpdk.py b/framework/project_dpdk.py > index 8448a61..18a8853 100644 > --- a/framework/project_dpdk.py > +++ b/framework/project_dpdk.py > @@ -198,10 +198,22 @@ class DPDKdut(Dut): > if not self.skip_setup: > assert (os.path.isfile(pkgName) is True), "Invalid package" >=20 > - self.session.copy_file_to(pkgName) > + p_dir, _ =3D os.path.split(self.base_dir) > + # ToDo: make this configurable > + dst_dir =3D "/tmp/" > + > + out =3D self.send_expect("ll %s && cd %s" % (dst_dir, p_dir)= , > + "#", verify =3D True) > + if out =3D=3D -1: > + raise ValueError("Directiry %s or %s does not exist," > + "please check params -d" > + % (p_dir, dst_dir)) Found pep8 E127 continuation line over-indented for visual indent. Should remove space before %. > + self.session.copy_file_to(pkgName, dst_dir) > + > + # put patches to p_dir/patches/ > if (patch is not None): > for p in patch: > - self.session.copy_file_to('../' + p) > + self.session.copy_file_to('dep/' + p, dst_dir) >=20 > self.kill_all() >=20 > @@ -216,13 +228,25 @@ class DPDKdut(Dut): > self.send_expect("rm -rf %s" % self.base_dir, "#") >=20 > # unpack dpdk > - out =3D self.send_expect("tar zxf " + pkgName.split('/')[-1]= , > "# ", 20) > - assert "Error" not in out > + out =3D self.send_expect("tar zxf %s%s -C %s" % > + (dst_dir, pkgName.split('/')[-1], > p_dir), > + "# ", 20, verify =3D True) Pep8 require not space in between parameter key and value.=20 > + if out =3D=3D -1: > + raise ValueError("Extract dpdk package to %s failure," > + "please check params -d" > + % (p_dir)) > + Found pep8 E127 continuation line over-indented for visual indent. Should remove space before %. > + # check dpdk dir name is expect > + out =3D self.send_expect("ls %s" % self.base_dir, > + "# ", 20, verify =3D True) Pep8 require not space in between parameter key and value. > + if out =3D=3D -1: > + raise ValueError("dpdk dir %s mismatch, please check > params -d" > + % self.base_dir) >=20 Found pep8 E127 continuation line over-indented for visual indent. Should remove space before %. > if (patch is not None): > for p in patch: > - out =3D self.send_expect("patch -d %s -p1 < ../%s" % > - (self.base_dir, p), "# ") > + out =3D self.send_expect("patch -d %s -p1 < %s" % > + (self.base_dir, dst_dir + p), > "# ") > assert "****" not in out >=20 > self.dut_prerequisites() > diff --git a/framework/ssh_connection.py b/framework/ssh_connection.py > index f3debc1..d1075b5 100644 > --- a/framework/ssh_connection.py > +++ b/framework/ssh_connection.py > @@ -51,7 +51,7 @@ class SSHConnection(object): >=20 > def send_expect(self, cmds, expected, timeout=3D15, verify=3DFalse): > self.logger.info(cmds) > - out =3D self.session.send_expect(cmds, expected, timeout, > verify=3DFalse) > + out =3D self.session.send_expect(cmds, expected, timeout, verify= ) > self.logger.debug(out) > return out >=20 > -- > 1.9.3