--- MANIFEST.in | 1 + man/virt-bootstrap.pod | 42 ++++++++++++++++++++++++++++++++++++++++++ setup.py | 27 +++++++++++++++++++++++++++ 3 files changed, 70 insertions(+) create mode 100644 man/virt-bootstrap.pod diff --git a/MANIFEST.in b/MANIFEST.in index bd0eb08..61bb7fb 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,2 +1,3 @@ include README.md LICENSE recursive-include src *.py +recursive-include man * diff --git a/man/virt-bootstrap.pod b/man/virt-bootstrap.pod new file mode 100644 index 0000000..eac88cb --- /dev/null +++ b/man/virt-bootstrap.pod @@ -0,0 +1,42 @@ + +=head1 NAME + +virt-bootstrap - Setup root file system for libvirt-based containers + +=head1 SYNOPSIS + +B<virt-bootstrap> [OPTIONS] URI DEST + +=head1 DESCRIPTION + +B<virt-bootstrap> is a tool providing an easy way to setup the root +file system for libvirt-based containers. It allows to use either a +tarball containing the file system, an image on a docker registry +or virt-builder template and unpacks it either as a folder or in a +qcow2 image with backing chains to mimic the docker layers. + +=head1 OPTIONS + +The following options are accepted when running C<virt-bootstrap>: + +=over 4 + +=item B<-q>, B<--quiet> + +Suppresses messages notifying about current state or actions of virt-bootstrap + +=item B<-d>, B<--debug> + +Show debugging output messages + +=item B<-h>, B<--help> + +Display command line help summary + +=item B<--version> + +Show virt-bootstrap's version number and exit + +=back + +=cut diff --git a/setup.py b/setup.py index 0f617e4..bca9955 100755 --- a/setup.py +++ b/setup.py @@ -11,6 +11,7 @@ import os import sys import subprocess import setuptools +from setuptools.command.install import install # pylint: disable=import-error, wrong-import-position sys.path.insert(0, 'src') # noqa: E402 @@ -26,6 +27,27 @@ def read(fname): return fobj.read() +class PostInstallCommand(install): + """ + Post-installation commands. + """ + def run(self): + """ + Post install script + """ + cmd = [ + 'pod2man', + '--center=Container bootstrapping tool', + '--name=VIRT-BOOTSTRAP', + '--release=%s' % virtBootstrap.__version__, + 'man/virt-bootstrap.pod', + 'man/virt-bootstrap.1' + ] + if subprocess.call(cmd) != 0: + raise RuntimeError("Building man pages has failed") + install.run(self) + + class CheckPylint(setuptools.Command): """ Check python source files with pylint and pycodestyle. @@ -114,9 +136,14 @@ setuptools.setup( ], cmdclass={ + 'install': PostInstallCommand, 'pylint': CheckPylint }, + data_files=[ + ("share/man/man1", ['man/virt-bootstrap.1']) + ], + tests_require=['mock>=2.0'], extras_require={ -- 2.13.5 _______________________________________________ virt-tools-list mailing list virt-tools-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/virt-tools-list