Implement PackagePacker.get_archive_name API

This commit is contained in:
Ivan Kravets
2020-07-06 15:57:49 +03:00
parent f97632202b
commit 0f8042eeb4

View File

@ -40,6 +40,16 @@ class PackagePacker(object):
self.package = package self.package = package
self.manifest_uri = manifest_uri self.manifest_uri = manifest_uri
@staticmethod
def get_archive_name(name, version, system=None):
return re.sub(
r"[^\da-zA-Z\-\._\+]+",
"",
"{name}{system}-{version}.tar.gz".format(
name=name, system=("-" + system) if system else "", version=version,
),
)
def pack(self, dst=None): def pack(self, dst=None):
tmp_dir = tempfile.mkdtemp() tmp_dir = tempfile.mkdtemp()
try: try:
@ -54,14 +64,10 @@ class PackagePacker(object):
src = self.find_source_root(src) src = self.find_source_root(src)
manifest = self.load_manifest(src) manifest = self.load_manifest(src)
filename = re.sub( filename = self.get_archive_name(
r"[^\da-zA-Z\-\._\+]+", manifest["name"],
"", manifest["version"],
"{name}{system}-{version}.tar.gz".format( manifest["system"][0] if "system" in manifest else None,
name=manifest["name"],
system="-" + manifest["system"][0] if "system" in manifest else "",
version=manifest["version"],
),
) )
if not dst: if not dst: