githubot

Command line tool to use Github's API for automation:
Installation
pip install githubot
Usage
Create release with assets
Releases management.
Usage: githubot release --token=TOKEN --repo=REPO
[--tag=TAG] [--title=TITLE] [--message=MESSAGE]
[ASSETS...]
Options:
--token=TOKEN Github access token.
-r=REPO --repo=REPO Repo full name like: owner/repo.
--tag=TAG Tag name for the release. If the tag does not
exist it will be created on default branch.
--title=TITLE Title for the release.
--message=MESSAGE Message for the release.
-h --help Show this message and exit.
For example:
Create a release to repo WqyJh/test with assets under the path of assets/.
githubot release --token <github_token> --repo WqyJh/test assets/*
Create a release and specify tag, title and message for it.
githubot release \
--token <github_token> \
--repo WqyJh/test \
--tag test_tag \
--title "This is an test title" \
--message "This release contains xxx" \
assets/*
Only regular files are supported for the --assets option, directories are not supported.
You can specify files in the following manner:
--assets file1 file2
--assets path/*
Use github repo as cloud storage
Files management.
Usage: githubot file upload --token=TOKEN --repo=REPO [FILES...]
githubot file download --token=TOKEN --repo=REPO [FILES...]
Options:
--token=TOKEN Github access token.
-r=REPO --repo=REPO Repo full name like: owner/repo.
-h --help Show this message and exit.
Upload files
Upload files to github repo WqyJh/test.
./run.py file upload \
--token <github_token> \
--repo WqyJh/test \
file1 file2 file*
Note that the FILES argument is just the same with ASSETS, only regular files are supported.
Download files
Download files from github repo WqyJh/test.
./run.py file download \
--token <github_token> \
--repo WqyJh/test \
file1 dir1 dir2/
Note that the FILES argument here cannot contains wildcard, but it can contains directories.
Delete files
Delete files from github repo.
./run.py file delete \
--token <github_token> \
--repo Wqyjh/test \
file1 dir1 dir2/
Development
- bumping 0.3.0 (PYPI)
- auto-changelog 1.15.0 (NPM)
The release processing is as follow:
- Calculate semantic version
git checkout dev
git pull origin dev
bumping
- Create release branch from dev
git checkout -b release-<version>
- Modify the version and commit
- Generate changelog and commit
auto-changelog --latest-version <version> --tag-prefix v
- Merge to master branch
- Tag version to master branch
Changelog
All notable changes to this project will be documented in this file. Dates are displayed in UTC.
Generated by auto-changelog.
12 July 2020
- feat: add config command
#16
21 August 2019
21 August 2019
- Release 0.6.0
#10
- docs: update README.md
#9
- feat: add file delete
#8
- feat: add directory downloading
#7
- docs: update README.md
#4
- docs: update CHANGELOG.md
e6c15a5
- Bump version to 0.6.0
7156b94
- Resolve conflicts
c794221
v0.4.0
20 August 2019
- Release 0.4.0
#2
- Storage
#1
- feat: add release creation with assets uploading
28c5214
- feat: replace click with docopt
9a7acd9
- chore: add setup configurations
2cc899f