diff options
author | Sam Thursfield <sam.thursfield@codethink.co.uk> | 2014-12-18 10:43:37 +0000 |
---|---|---|
committer | Sam Thursfield <sam.thursfield@codethink.co.uk> | 2014-12-18 10:43:37 +0000 |
commit | 764531201f99bf1d9c6dd451a212b741bfb6715e (patch) | |
tree | b9a839ff8cb8000792382805d9027e4891835763 /baserockimport/app.py | |
parent | eb1a6a511c85163fe3e7ede56a348206075d9af9 (diff) | |
parent | 65278fdf1ec80a784f9ada8d390ad063a459c97a (diff) | |
download | import-764531201f99bf1d9c6dd451a212b741bfb6715e.tar.gz |
Merge branch 'baserock/richardipsum/python_v3'
There is work still to be done on this importer, but it is usable for
some Python projects and may as well be merged to 'master' now.
Diffstat (limited to 'baserockimport/app.py')
-rw-r--r-- | baserockimport/app.py | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/baserockimport/app.py b/baserockimport/app.py index 6f4d7c3..bb46c67 100644 --- a/baserockimport/app.py +++ b/baserockimport/app.py @@ -82,6 +82,8 @@ class BaserockImportApplication(cliapp.Application): arg_synopsis='REPO PROJECT_NAME SOFTWARE_NAME') self.add_subcommand('rubygems', self.import_rubygems, arg_synopsis='GEM_NAME [GEM_VERSION]') + self.add_subcommand('python', self.import_python, + arg_synopsis='PACKAGE_NAME [VERSION]') self.stdout_has_colours = self._stream_has_colours(sys.stdout) @@ -180,6 +182,23 @@ class BaserockImportApplication(cliapp.Application): loop = baserockimport.mainloop.ImportLoop( app=self, - goal_kind='rubygems', goal_name=goal_name, goal_version=goal_version) - loop.enable_importer('rubygems') + goal_kind='rubygems', goal_name=args[0], goal_version='master') + loop.enable_importer('rubygems', strata=['strata/ruby.morph']) + loop.run() + + def import_python(self, args): + '''Import one or more python packages.''' + if len(args) < 1 or len(args) > 2: + raise cliapp.AppException( + 'Please pass the name of the python package on the commandline.') + + package_name = args[0] + + package_version = args[1] if len(args) == 2 else 'master' + + loop = baserockimport.mainloop.ImportLoop(app=self, + goal_kind='python', + goal_name=package_name, + goal_version=package_version) + loop.enable_importer('python', strata=['strata/core.morph']) loop.run() |