[dts] [PATCH] framework: optimize dpdk package preparation process

Liu, Yong yong.liu at intel.com
Sun Feb 15 04:02:26 CET 2015


Applied. Thx.

> -----Original Message-----
> From: Qiu, Michael
> Sent: Friday, February 13, 2015 3:25 PM
> To: Liu, Yong; dts at dpdk.org
> Subject: Re: [dts] [PATCH] framework: optimize dpdk package preparation
> process
> 
> On 2/13/2015 11:04 AM, Yong Liu wrote:
> > If output/dpdk existed, only need pull latest code. If output/dpdk
> > not existed, will clone from dpdk.org. When failure happened, DTS
> > will exit.
> >
> > Signed-off-by: Marvinliu <yong.liu at intel.com>
> 
> Acked-by: Michael Qiu <michael.qiu at intel.com>
> > ---
> >  framework/dts.py  |  3 ---
> >  framework/main.py | 25 ++++++++++++++-----------
> >  2 files changed, 14 insertions(+), 14 deletions(-)
> >
> > diff --git a/framework/dts.py b/framework/dts.py
> > index 871380b..3c73596 100644
> > --- a/framework/dts.py
> > +++ b/framework/dts.py
> > @@ -399,9 +399,6 @@ def run_all(config_file, pkgName, git, patch,
> skip_setup,
> >      global stats
> >      global log_handler
> >
> > -    # change operation directory
> > -    os.chdir("../")
> > -
> >      # prepare the output folder
> >      if not os.path.exists(output_dir):
> >          os.mkdir(output_dir)
> > diff --git a/framework/main.py b/framework/main.py
> > index 3b2f484..0223f57 100755
> > --- a/framework/main.py
> > +++ b/framework/main.py
> > @@ -39,28 +39,30 @@ import sys
> >  import argparse
> >  import dts
> >
> > +# change operation directory
> > +os.chdir("../")
> > +
> >
> >  def git_build_package(gitLabel, gitPkg, output):
> >      """
> > -    generate package from git
> > -    run bash shell
> > +    generate package from git, if dpdk existed will pull latest code
> >      """
> >      gitURL = r"http://dpdk.org/git/dpdk"
> >      gitPrefix = r"dpdk/"
> > -    print "git clone %s %s/%s" % (gitURL, output, gitPrefix)
> > -    ret = os.system("git clone %s output/%s" % (gitURL, gitPrefix))
> > +    if os.path.exists("%s/%s" % (output, gitPrefix)) is True:
> > +        ret = os.system("cd %s/%s && git pull --force" % (output,
> gitPrefix))
> > +    else:
> > +        print "git clone %s %s/%s" % (gitURL, output, gitPrefix)
> > +        ret = os.system("git clone %s output/%s" % (gitURL, gitPrefix))
> >      if ret is not 0:
> >          raise EnvironmentError
> > +
> >      print "git archive --format=tar.gz --prefix=%s %s -o %s" %
> (gitPrefix, gitLabel, gitPkg)
> > -    ret = os.system("cd output/%s && git archive --format=tar.gz --
> prefix=%s %s -o %s" % (gitPrefix, gitPrefix, gitLabel, gitPkg))
> > +    ret = os.system("cd %s/%s && git archive --format=tar.gz --
> prefix=%s/ %s -o ../../%s"
> > +                    % (output, gitPrefix, gitPrefix, gitLabel, gitPkg))
> >      if ret is not 0:
> >          raise EnvironmentError
> >
> > -#
> > -# Main program begins here
> > -#
> > -
> > -
> >  # Read cmd-line args
> >  parser = argparse.ArgumentParser(description='DPDK test framework.')
> >
> > @@ -118,7 +120,7 @@ parser.add_argument('-v', '--verbose',
> >  args = parser.parse_args()
> >
> >
> > -# prepare DPDK source test package
> > +# 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)
> > @@ -126,6 +128,7 @@ if args.git is not None:
> >          print "FAILED TO PREPARE DPDK PACKAGE!!!"
> >          sys.exit()
> >
> > +# Main program begins here
> >  dts.run_all(args.config_file, args.snapshot, args.git,
> >              args.patch, args.skip_setup, args.read_cache,
> >              args.project, args.suite_dir, args.test_cases,



More information about the dts mailing list