From cb47fc39df7567c086264a475e7a64c4a6d6fa9e Mon Sep 17 00:00:00 2001 From: kspby Date: Tue, 10 Mar 2020 15:27:58 +0300 Subject: [PATCH] Add flag --skip-doc-build Disable generating sphinx documentation if specified --- README.md | 1 + pyp2rpm/bin.py | 7 ++++++- pyp2rpm/convertor.py | 4 +++- pyp2rpm/metadata_extractors.py | 5 ++++- 4 files changed, 14 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 5722c664..3297e861 100644 --- a/README.md +++ b/README.md @@ -55,6 +55,7 @@ All of the options are (print this by running pyp2rpm -h): --srpm When used pyp2rpm will produce srpm instead of printing specfile into stdout. --proxy PROXY Specify proxy in the form proxy.server:port. + --skip-doc-build Specify to skip doc build (disabled by default) -r RPM_NAME Name of rpm package (overrides calculated name). -d SAVE_PATH Specify where to save package file, specfile diff --git a/pyp2rpm/bin.py b/pyp2rpm/bin.py index 0297d170..4004aeaa 100644 --- a/pyp2rpm/bin.py +++ b/pyp2rpm/bin.py @@ -109,6 +109,10 @@ def get_scl_help_record(self, ctx): help='Specify proxy in the form proxy.server:port.', default=None, metavar='PROXY') +@click.option('--skip-doc-build', + help='When used pyp2rpm will not produce doc build ', + default=False, + is_flag=True) @click.option('-r', help='Name of rpm package (overrides calculated name).', default=None, @@ -167,7 +171,7 @@ def get_scl_help_record(self, ctx): default=None, metavar='FILE_NAME') @click.argument('package', nargs=1) -def main(package, v, d, s, r, proxy, srpm, p, b, o, t, venv, autonc, sclize, +def main(package, v, d, s, r, proxy, skip_doc_build, srpm, p, b, o, t, venv, autonc, sclize, **scl_kwargs): """Convert PyPI package to RPM specfile or SRPM. @@ -202,6 +206,7 @@ def main(package, v, d, s, r, proxy, srpm, p, b, o, t, venv, autonc, sclize, python_versions=p, rpm_name=r, proxy=proxy, + skip_doc_build=skip_doc_build, venv=venv, autonc=autonc) diff --git a/pyp2rpm/convertor.py b/pyp2rpm/convertor.py index 19355b4a..ed46e892 100644 --- a/pyp2rpm/convertor.py +++ b/pyp2rpm/convertor.py @@ -45,7 +45,7 @@ def __init__(self, package=None, version=None, distro=settings.DEFAULT_DISTRO, base_python_version=settings.DEFAULT_PYTHON_VERSION, python_versions=[], - rpm_name=None, proxy=None, venv=True, autonc=False): + rpm_name=None, proxy=None, skip_doc_build=False, venv=True, autonc=False): self.package = package self.version = version self.save_dir = save_dir @@ -57,6 +57,7 @@ def __init__(self, package=None, version=None, self.template = '{0}.spec'.format(self.template) self.rpm_name = rpm_name self.proxy = proxy + self.skip_doc_build = skip_doc_build self.venv = venv self.autonc = autonc self.pypi = True @@ -271,6 +272,7 @@ def metadata_extractor(self): self.name_convertor, self.version, self.rpm_name, + self.skip_doc_build, self.venv, base_python_version) diff --git a/pyp2rpm/metadata_extractors.py b/pyp2rpm/metadata_extractors.py index b2e242dd..9fc0e892 100644 --- a/pyp2rpm/metadata_extractors.py +++ b/pyp2rpm/metadata_extractors.py @@ -177,7 +177,7 @@ class LocalMetadataExtractor(object): __metaclass__ = ABCMeta def __init__(self, local_file, name, name_convertor, version, - rpm_name=None, venv=True, + rpm_name=None, skip_doc_build=False, venv=True, base_python_version=None, metadata_extension=False): self.local_file = local_file @@ -186,6 +186,7 @@ def __init__(self, local_file, name, name_convertor, version, self.name_convertor = name_convertor self.version = version self.rpm_name = rpm_name + self.skip_doc_build = skip_doc_build self.venv = venv self.base_python_version = base_python_version self.metadata_extension = metadata_extension @@ -527,6 +528,8 @@ def data_from_archive(self): archive_data['packages'] = self.packages archive_data['has_bundled_egg_info'] = self.has_bundled_egg_info sphinx_dir = self.sphinx_dir + if self.skip_doc_build: + sphinx_dir = None if sphinx_dir: archive_data['sphinx_dir'] = "/".join(sphinx_dir.split("/")[1:]) archive_data['build_deps'].append(