github-collective 0.1.3
Script to manage github account in a collective manner
Latest Version: 0.1.4
Introduction
Github organization are great way for organization to manage their git repositories. This tool will let you automate tedious tasks of creating teams, granting permission and creating repositories.
Approach that github-collective tool takes is that you edit central configuration (for now only ini-like file) from where configuration is read and updated respectivly.
Initially purposo of this scrip is to manage Plone's collective organisation on github: https://collective.github.com
How to install
| Tested with: | Python2.6 |
|---|---|
| Dependencies: | argparse, requests |
% pip install github-collective (or) % easy_install github-collective
Usage
When github-collective is installed it should create executable with same name.
% bin/github-collective --help
usage: github-collective [-h] -c CONFIG [-M MAILER] [-C CACHE] -o GITHUB_ORG
-u GITHUB_USERNAME -P GITHUB_PASSWORD [-v] [-p]
This tool will let you automate tedious tasks of creating teams granting
permission and creating repositories.
optional arguments:
-h, --help show this help message and exit
-c CONFIG, --config CONFIG
path to configuration file (could also be remote
location). eg.
http://collective.github.com/permissions.cfg (default:
None)
-M MAILER, --mailer MAILER
TODO (default: None)
-C CACHE, --cache CACHE
path to file where to cache results from github.
(default: None)
-o GITHUB_ORG, --github-org GITHUB_ORG
github organisation. (default: None)
-u GITHUB_USERNAME, --github-username GITHUB_USERNAME
github account username. (default: None)
-P GITHUB_PASSWORD, --github-password GITHUB_PASSWORD
github account password. (default: None)
-v, --verbose
-p, --pretend
Example of configuration stored locally
% bin/github-collective \
-c example.cfg \ # path to configuration file
-o vim-addons \ # organization that we are
-u garbas \ # account that has management right for organization
-P PASSWORD # account password
Example of configuration stored on github
% bin/github-collective \
-c https://raw.github.com/garbas/github-collective/master/example.cfg \
# url to configuration file
-o collective \ # organization that we are
-u garbas \ # account that has management right for organization
-P PASSWORD # account password
Example of cached configuration
% bin/github-collective \
-c https://raw.github.com/garbas/github-collective/master/example.cfg \
# url to configuration file
-C .cache # file where store and read cached results from github
-o collective \ # organization that we are
-u garbas \ # account that has management right for organization
-P PASSWORD # account password
Todo
- Send emails to owners about removing repos
- better logging mechanism (eg. logbook)
Credits
| Author: | Rok Garbas (garbas) |
|---|
Changelog
0.1.3 - 2011-07-09
- fix caching file bug, cache now working [garbas]
0.1.2 - 2011-07-03
- remane team to old_team to keep convention in sync.run method, using add instead of update on sets [e48de49, garbas]
- pretend should work for all except get reuqest type [e098f9d, garbas]
- nicer dump of json in cache file, unindent section which searches for repos defined in teams [b8cb123, garbas]
- we should write to cache file when there is no cache file avaliable [fd7f9ee, garbas]
0.1.1 - 2011-07-02
- and we have first bugfix relese, after refractoring and merging enable-cache branch. [a09d174, garbas]
0.1 - 2011-07-02
- initial release [garbas]
| File | Type | Py Version | Uploaded on | Size | # downloads |
|---|---|---|---|---|---|
| github-collective-0.1.3.tar.gz (md5) | Source | 2011-07-09 | 9KB | 286 | |
- Author: Rok Garbas
- Home Page: https://github.com/garbas/github-collective
- Keywords: github git permission collaboration collective
- License: BSD
- Categories
- Package Index Owner: aclark, garbas
- DOAP record: github-collective-0.1.3.xml
