summaryrefslogtreecommitdiff
path: root/baserockimport/app.py
diff options
context:
space:
mode:
authorSam Thursfield <sam.thursfield@codethink.co.uk>2014-12-18 10:43:37 +0000
committerSam Thursfield <sam.thursfield@codethink.co.uk>2014-12-18 10:43:37 +0000
commit764531201f99bf1d9c6dd451a212b741bfb6715e (patch)
treeb9a839ff8cb8000792382805d9027e4891835763 /baserockimport/app.py
parenteb1a6a511c85163fe3e7ede56a348206075d9af9 (diff)
parent65278fdf1ec80a784f9ada8d390ad063a459c97a (diff)
downloadimport-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.py23
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()