Metadata-Version: 1.1
Name: pydebsign
Version: 0.1.5
Summary: yet another library of debsign
Home-page: https://github.com/mkouhei/pydebsign
Author: Kouhei Maeda
Author-email: mkouhei@palmtb.net
License: ISC License
Description: ===============================================
         pydebsign is a yet another library of debsign
        ===============================================
        
        Status
        ------
        
        .. image:: https://secure.travis-ci.org/mkouhei/pydebsign.png?branch=devel
           :target: http://travis-ci.org/mkouhei/pydebsign
        .. image:: https://coveralls.io/repos/mkouhei/pydebsign/badge.png?branch=devel
           :target: https://coveralls.io/r/mkouhei/pydebsign?branch=devel
        .. image:: https://pypip.in/v/pydebsign/badge.png
           :target: https://crate.io/packages/pydebsign
        .. image:: https://readthedocs.org/projects/pydebsign/badge/?version=latest
           :target: https://readthedocs.org/projects/pydebsign/?badge=latest
           :alt: Documentation Status
        
        Motivation
        ----------
        
        `debsign` is a command of devscripts that sign a Debian .changes and .dsc file pare using GPG,
        the command cannot use in environment witout TTY, for example invokeking by CI.
        
        I had tried to use debsign from `subprocess` module of Python as follow,
        but entering passphrase prompt is always returned.
        It was the same in the case of using gnupg-agent and keyring.::
        
          >>> import subprocess
          >>> import shlex
          >>> command0 = 'echo -e "%s\n%s\n"' % (`passphrase`, `passphrase`)
          >>> command1 = '/usr/bin/debsign -k %s %s' % (`keyid`, `.changes`)
          >>> process0 = subprocess.Popen(shlex.split(command0),
          ...                             stdin=subprocess.PIPE,
          ...                             stdout=subprocess.PIPE,
          ...                             stderr=subprocess.PIPE)
          >>> process1 = subprocess.Popen(shlex.split(command1),
          ...                             stdin=process0.stdout,
          ...                             stdout=subprocess.PIPE,
          ...                             stderr=subprocess.PIPE)
          >>> stdout, stderr = process.communicate()
        
        So, I decided to make a Python library to do the same behavior debsign.
        
        
        Goal
        ----
        
        * It is enable to sign `.changes` and `.dsc` files with GPG without the input of interactive passphrase.
        * It can also be used by a user can not login shell on the CI, such as Jenkins.
        
        
        Requires
        --------
        
        * Debian system, or the system derived from Debian.
        
          * Debian GNU/Linux Wheezy
          * Debian GNU/Linux Jessie/Sid
          * Ubuntu 14.04 LTS
        
        * Debian package as follows;
        
          * gnupg
          * dput
          * lintian
          * python (= python2.7) or python3
        
        * Python packages as follows;
        
          * python_gnupg (as debian package is python-gnupg or python3-gnupg)
          * python_debian (as debian package is python-debian or python3-debian)
          * chardet (as debian package is python-chardet or python3-chardet)
        
        
        Usage
        -----
        
        Generic usage;::
        
          >>> from pydebsign import debsign
          >>> debsign.debsign_process('/path/to/some.changes', passphrase='secretkey')
        
        
        When use another GPG Keyring instead of default GPG keyring;::
        
          >>> from pydebsign import debsign
          >>> debsign.debsign_process('/path/to/some.changes', passphrase='secretkey',
          ...                         keyid='keyid', gnupghome='/path/to/gpghome')
        
        History
        -------
        
        0.1.5 (2015-08-25)
        ^^^^^^^^^^^^^^^^^^
        
        * Changes Sphinx theme to sphinx_rtd_theme.
        * Merge pull request #9 from mkouhei/travis-packages
        * Adds execute apt-get update.
        * Enabled sudo explicitly.
        
        0.1.4 (2014-12-21)
        ^^^^^^^^^^^^^^^^^^
        
        * Unsupported Python 3.2
        * Added Sphinx documents and applied Read the docs
        * Migrated pep8, pyflakes, pychecker, pylint to Tox
        
        0.1.3 (2014-05-31)
        ^^^^^^^^^^^^^^^^^^
        
        * Fixed #6 dput check local section is failed
        * Unsupported Python2.6
        
        0.1.2 (2014-05-27)
        ^^^^^^^^^^^^^^^^^^
        
        * Fixed #3 cannot decode umlaut.
        
        0.1.1 (2014-05-26)
        ^^^^^^^^^^^^^^^^^^
        
        * Resolved the backward compatibility for python_gnupg 0.3.0 (Wheezy version).
        
        0.1.0 (2014-05-26)
        ^^^^^^^^^^^^^^^^^^
        
        * Initial release
        
        TODO
        ----
        
        * Adding command line interface.
        
        
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: License :: OSI Approved :: ISC License (ISCL)
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: System
Classifier: Topic :: System :: Archiving
Classifier: Topic :: System :: Archiving :: Packaging
Classifier: Topic :: System :: Software Distribution
