Skip to main content

githubot

Build Status license

Command line tool to use Github's API for automation:

  • create release with assets
  • upload/download files to github
  • TODO

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/* # wildcard

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:

  1. Calculate semantic version
    git checkout dev
    git pull origin dev
    bumping
    
  2. Create release branch from dev
    git checkout -b release-<version>
    
  3. Modify the version and commit
  4. Generate changelog and commit
    auto-changelog --latest-version <version> --tag-prefix v
    
  5. Merge to master branch
  6. 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.

0.7.0

12 July 2020

  • feat: add config command #16

v0.6.1

21 August 2019

v0.6.0

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

Metadata

Release files for githubot 0.7.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for githubot 0.7.0
File Size Uploaded
githubot-0.7.0.tar.gz 6.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for githubot 0.7.0
File Interpreter ABI Platform
githubot-0.7.0-py3-none-any.whl Python 3 none any Details

Total release size: 13.6 kB

Release files / githubot-0.7.0.tar.gz

Download URL githubot-0.7.0.tar.gz
Size 6.0 kB
Tags Source
SHA-256 checksum
How to use checksums
1f2f7265bec38c58ff1eb526f7970bb9cab1f4e273c8a9facc540c5146d327ad
BLAKE2b-256 checksum
How to use checksums
8ca0d11b179d187e22e854b1cffac0fc17e8cc9056869cc6990b82db14743b77
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/49.1.3 requests-toolbelt/0.9.1 tqdm/4.34.0 CPython/3.6.7

Release files / githubot-0.7.0-py3-none-any.whl

Download URL githubot-0.7.0-py3-none-any.whl
Size 7.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3aab0cc9795fca3b1baf55b678c583d6aa056f6b6d7ec82a01004ea6dc7c9933
BLAKE2b-256 checksum
How to use checksums
0392cb23fe07a1d5c9f1c24e3dccc2eca1528ea32100c4b883f831cbaf9f09a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/49.1.3 requests-toolbelt/0.9.1 tqdm/4.34.0 CPython/3.6.7

Release history Release notifications | RSS feed

This release

0.7.0 This release

2 release files

0.6.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page