Metadata-Version: 2.0
Name: groupthink
Version: 0.1.0
Summary: Install, update, and manage GitHub organization-specific command line scripts
Home-page: https://github.com/dcgov/groupthink
Author: Emanuel Feld
Author-email: elefbet@gmail.com
License: CC0-1.0
Keywords: git cli console github
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: CC0 1.0 Universal (CC0 1.0) Public Domain Dedication
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Operating System :: OS Independent
Provides-Extra: tests
Requires-Dist: mock; extra == 'tests'
Requires-Dist: nose; extra == 'tests'
Requires-Dist: coverage; extra == 'tests'
Requires-Dist: yanc; extra == 'tests'
Requires-Dist: preggy; extra == 'tests'
Requires-Dist: tox; extra == 'tests'
Requires-Dist: ipdb; extra == 'tests'
Requires-Dist: coveralls; extra == 'tests'
Requires-Dist: sphinx; extra == 'tests'

=============
groupthink
=============

The groupthink package helps you install, update, and manage GitHub organization-specific command line scripts. Let's say your organization is called :code:`foo`.

Running :code:`groupthink --install foo` looks for a repository at :code:`https://github.com/foo/foo-cli`. If it finds one, it installs to the :code:`foo-cli` directory within :code:`~/.groupthink`. Like this:

::

    .groupthink
    └── foo-cli
        ├── CONTRIBUTING.md
        ├── LICENSE.md
        ├── README.md
        └── bin
            ├── help
            ├── init
            ├── scan
            ├── setup
            └── validate

It also install as :code:`foo` script to :code:`/usr/local/bin`, which allows you to invoke any of the scripts found within the :code:`foo-cli/bin` directory. So :code:`foo init` would run the :code:`init` script within :code:`foo-cli/bin`, :code:`foo help` would run the :code:`help` script in the same directory, and so on.

You can check for updates made to the remote :code:`foo-cli` repository with :code:`groupthink --update foo`. :code:`groupthink --upgrade foo` would install all updates. And :code:`groupthink --uninstall foo` removes both the :code:`foo` script in :code:`/usr/local/bin` and the :code:`foo-cli` directory in :code:`~/.groupthink`.

Finally, you can list all the organization commands you have installed to :code:`~/.groupthink` with :code:`groupthink --list`.

To sum up the subcommands:

* :code:`groupthink --install <org>` installs the scripts for :code:`<org>`
* :code:`groupthink --uninstall <org>` removes the scripts for :code:`<org>`
* :code:`groupthink --update <org>` checks for updates made to :code:`<org>`'s scripts
* :code:`groupthink --upgrade <org>` installs all updates made to :code:`<org>`'s scripts
* :code:`groupthink --list` lists all groupthink scripts you have installed for any :code:`<org>`

Requirements
==============

* Python (v. 2.7 or 3.3+)
* git
* If you're running Windows, use `Git Bash <https://git-for-windows.github.io/>`_

Installation
==============

Install groupthink with :code:`pip install groupthink`


