Metadata-Version: 1.1
Name: kgitb
Version: 0.1.3
Summary: A commit message linter
Home-page: https://github.com/Sagacify/komitet-gita-bezopasnosti
Author: Augustin Borsu
Author-email: dev@sagacify.com
License: UNKNOWN
Description: Комитет Git'a Безопасности
        ==========================
        
        |CircleCI branch| |Docker Stars|
        
        Комитет Git'a Безопасности (КGБ) or Git security committee, is a commit
        message style enforcer. It comes in two parts, a web hook for github
        (lubyanka) and a local git commit-msg hook (resident). In an ideal
        world, a local hook should be enough, in practice, mistakes happen. The
        KGitB is here to ensure no mistakes are ever allowed through to infect
        your master branch.
        
        examples
        --------
        
        -  `failing <https://github.com/Sagacify/komitet-gita-bezopasnosti/pull/4>`__
        -  `passing <https://github.com/Sagacify/komitet-gita-bezopasnosti/pull/6>`__
        
        resident
        ========
        
        Resident can be installed using pip using the following command. If you
        have a permission errors try using the --user flag with pip and add
        ~/.local/bin to your path. It should not require any dependencies.
        
        ::
        
            pip install kgitb
        
        To install in a local repository, go into it and run:
        
        ::
        
            resident install --local
        
        To set it up in another repository or multiple repository, you can path
        it a path to the repositor(y/ies) that you want to install it to:
        
        ::
        
            resident install --path PATH_TO_REPO1 PATH_TO_REPO2
        
        To set it up globally.
        
        WARNING 0: Only works with git 2.9.0+
        
        WARNING1: If it hasn't been set yet, this option will set the
        core.hooksPath value in your ``.gitconfig`` to
        ``$HOME/.config/git-global-hooks``. This will disable all local hooks in
        your repositories. If this is not what you want, you might want to have
        a look at hook templates.
        
        WARNING2: global means for the user, system setup hasn't been
        implemented (yet, PR anyone?).
        
        ::
        
            resident install --global
        
        If the webhook is correctly set up, you should see a
        ``APPROVED BY THE KGitB.`` line when you commit something, or if there
        are errors, the commit will fail with a description of the errors.
        
        Currently there are no options to select. They will be added at a later
        point.
        
        lubyanka
        ========
        
        Lubyanka is the headquarters of all residents. It should be run on a
        server and setup with github to check all pull-requests. As excpected,
        if there are any violations, lubyanka will submit a helpful if somewhat
        authoritative comment message and set the status to error. If there are
        no violations it will set the status to success and congragulate you on
        a job well done.
        
        To run lubyanka, get a copy of the code, install the requirements and
        execute it with the following commands:
        
        ::
        
            git clone https://github.com/Sagacify/komitet-gita-bezopasnosti.git
            cd komitet-gita-bezopasnosti
            pip install -r requirements.txt
            GH_TOKEN=`YOUR GITHUB TOKEN HERE` python -m kgitb
        
        If you use docker remember to set the GH\_TOKEN environment variable and
        link to port 5000.
        
        The github token is needed to write comments, set the pr status as well
        as access any private repo.
        
        Contribute
        ==========
        
        All contributions are of course welcome, please submit them as
        pull-requests and make sure that you are not in violation of the kgitb
        rules. If you need ideas: \* Add rules list and documentation \*
        resident, add --template, --template--system and --system install \*
        resident, add lubyanka command line options for customizing rules \*
        lubyanka, add origin of connection check
        `cfr <https://github.com/carlos-jenkins/python-github-webhooks/blob/master/webhooks.py#L56>`__
        \* lubyanka, add setup script \* packaging, figure out how
        extra\_requires works.
        
        to test your changes please use tox and py.test, you should be able to
        install them by running:
        
        ::
        
            pip install -r dev-requirements.txt
        
        and run the tests using:
        
        ::
        
            tox
        
        Publish
        =======
        
        -  generate README.rst
        
           ::
        
               pandoc --from=markdown --to=rst --output=README.rst README.md
        
        -  publish
        
           ::
        
               python setup.py sdist upload
        
        .. |CircleCI branch| image:: https://img.shields.io/circleci/project/Sagacify/komitet-gita-bezopasnosti/master.svg?maxAge=2592000
           :target: https://circleci.com/gh/Sagacify/komitet-gita-bezopasnosti/tree/master
        .. |Docker Stars| image:: https://img.shields.io/docker/stars/sagacify/kgb.svg?maxAge=2592000
           :target: https://hub.docker.com/r/sagacify/kgb/
        
Keywords: git lint russian_history
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3.5
Classifier: Topic :: Text Processing
