A multi-repo CLI to help operating on multiple repos at the same time.
Project description
repo-tools
Development • Documentation • Contribute • Support
This is a small Multi Repo CLI that allows you to apply changes to multiple projects at the same time.
Use it!
pip install repo-tools
$ rt --help
Usage: rt [OPTIONS] COMMAND [ARGS]...
Options:
--install-completion Install completion for the current shell.
--show-completion Show completion for the current shell, to copy it or
customize the installation.
--help Show this message and exit.
Commands:
config Configure repo_tools
exec Execute an arbitrary command
gh Interact with github
snippet Run snippets (custom snippets can be registered)
Required Setup
- Display your config:
rt config show
- Create your Github config:
rt config gh setup
Note:
To create your config you will need to have a Personal Github Oauth Token, that can be created here.
Make sure to give it repo:all
and admin:org
permissions.
- Register Projects
rt config projects detect ./<your-projects-dir>
- Register Snippets
rt snippet register <path-to-snippet-file> | <path-to-dir-with-snippets>
Development
Setup
This project uses poetry for dependency management, let's install it:
pip install poetry
Run
You can use poetry to install all dependencies and use the current state of the CLI as follows:
poetry install
poetry shell # opens new shell in virtual env
> rt config show
> ...
How to Contribute
In order to contribute you just have to have Python installed on your machine. In case you do not have it installed get it from python.org.
Linting Tool
This project is using pre-commit to enable linting and auto-formatting as a pre-commit hook. The hooks are configured in .pre-commit-config.yaml.
To install the hooks you have to run the following command (only once):
pip install pre-commit
pre-commit install
Then you can trigger all the hooks manually by running:
poetry install
poetry run pre-commit run --all-files
Additionally on every git commit
the hooks will be triggered and have to pass.
How to run tests
You can run all the tests, by simply running:
poetry install
poetry run pytest -vv
Support & Feedback
Your contribution is very much appreciated. Feel free to create a PR or an Issue with your suggestions for improvements.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file repo-tools-0.2.0.tar.gz
.
File metadata
- Download URL: repo-tools-0.2.0.tar.gz
- Upload date:
- Size: 13.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.4 CPython/3.8.7 Linux/4.15.0-1077-aws
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c83e78dfa06ecfe32a72441c1f8e019ad7f99d13370d00d7f39fa520c69c7bda |
|
MD5 | 86e0af1f31884d2dcd83efd3363207c7 |
|
BLAKE2b-256 | e1449a554aae3a1005a2b3ae865d11d8da0ba85db32bcf665ec8073f8a571b52 |
File details
Details for the file repo_tools-0.2.0-py3-none-any.whl
.
File metadata
- Download URL: repo_tools-0.2.0-py3-none-any.whl
- Upload date:
- Size: 16.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.4 CPython/3.8.7 Linux/4.15.0-1077-aws
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 99bef3b9366c426b00624a5619e9a7d0e2e9a4c17050cd1d4102c8addba75c5c |
|
MD5 | 70dc84efcc2dfc4372e9c066185643c1 |
|
BLAKE2b-256 | 303b85d0c89df629e5456d539253d7e0d21715765d3f6f4451339b405c1c600f |