diff options
Diffstat (limited to 'baserockimport/exts/utils.py')
-rw-r--r-- | baserockimport/exts/utils.py | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/baserockimport/exts/utils.py b/baserockimport/exts/utils.py index aadefdf..2e2d741 100644 --- a/baserockimport/exts/utils.py +++ b/baserockimport/exts/utils.py @@ -44,13 +44,19 @@ def get_compression(url): return None -# Assumption: url passed to this function must have a 'standard' tar extension -def str_tarball_lorry(extname, lorry_prefix, package_name, url): - ''' Create a json lorry file ''' +def str_archive_lorry(archive_type, extname, lorry_prefix, package_name, url): + ''' Create a json lorry file from a url + + Assumption: url passed to this function must have either: + * a 'standard' tar extension + * a zip extension + ''' + + assert archive_type in ('tarball', 'zip') name = '%s/%s' % (lorry_prefix, package_name) - lorry = {'type': 'tarball', + lorry = {'type': archive_type, 'url': url, 'x-products-%s' % extname: [package_name]} @@ -58,7 +64,14 @@ def str_tarball_lorry(extname, lorry_prefix, package_name, url): if compression: lorry['compression'] = compression - return json.dumps({name + "-tarball": lorry}, indent=4, sort_keys=True) + return json.dumps({name + "-%s" % archive_type: lorry}, + indent=4, sort_keys=True) + +def str_tarball_lorry(extname, lorry_prefix, package_name, url): + return str_archive_lorry('tarball', extname, lorry_prefix, package_name, url) + +def str_zip_lorry(extname, lorry_prefix, package_name, url): + return str_archive_lorry('zip', extname, lorry_prefix, package_name, url) def str_repo_lorry(extname, lorry_prefix, package_name, repo_type, url): name = '%s/%s' % (lorry_prefix, package_name) |