Metadata-Version: 1.1
Name: pydebsign
Version: 0.1.2
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
        
        
        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
          >>> command = '/usr/bin/debsign -k %s %s' % (`keyid`, `.changes`)'
          >>> process = subprocess.Popen(shlex.split(command),
          ...                            stdin=subprocess.PIPE,
          ...                            stdout=subprocess.PIPE,
          ...                            stderr=subprocess.PIPE)
          >>> stdout, stderr = process.communicate('%s\n%s\n') % (`passphrase`, `passphrase`)
        
        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.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 :: 3 - Alpha
Classifier: License :: OSI Approved :: ISC License (ISCL)
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.2
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
