CLI framework which supports both command and subcommand.
Project description
owcli
CLI framework which supports both command and subcommand based on docopt.
Install
$ pip install owcli
Quick start
Create owcli project.
$ owcli init <app_name> --python <python_version>
Run
$ cd <app_name>
$ pipenv install
$ pipenv run python <app_name>/main.py --help
Concrete example
$ owcli init testapp --python 3.7
------------------------
| Create entries... |
------------------------
๐ /mnt/c/Users/syoum/git/github.com/tadashi-aikawa/owcli/testapp
โ๐ Pipfile
โ๐ README.md
โ๐ setup.py
โ๐ testapp
โ๐ commands
โ๐ cmd1
โ๐ main.py
โ๐ __init__.py
โ๐ cmd2
โ๐ main.py
โ๐ subcmd1
โ๐ main.py
โ๐ __init__.py
โ๐ subcmd2
โ๐ main.py
โ๐ __init__.py
โ๐ __init__.py
โ๐ __init__.py
โ๐ main.py
โ๐ __init__.py
------------------------
| Next you have to ... |
------------------------
.
.
$ cd testapp
$ pipenv install
$ pipenv shell
$ python testapp/main.py --help
Usage:
testapp <command> [<subcommand>] [<args>...]
testapp <command> [<subcommand>] (-h | --help)
testapp (-h | --help)
testapp --version
Commands:
cmd1 Command1
cmd2 Command2
$ python testapp/main.py cmd2 -h
Usage:
testapp cmd2 [<subcommand>] [<args>...]
testapp cmd2 (-h | --help)
Subcommands:
subcmd1 Subcommand1
subcmd2 Subcommand2
$ python testapp/main.py cmd2 subcmd1 --help
Subcommand1
Usage:
testapp cmd2 subcmd1 <names>... [-f|--flag]
testapp cmd2 subcmd1 (-h | --help)
Options:
<names>... Names
-f --flag Flag
-h --help Show this screen.
$ python testapp/main.py cmd2 subcmd1 hoge hoga hogu -f
flag: true
names:
- hoge
- hoga
- hogu
For developer
Requirements
- poetry
- make
- bats
Commands
Integration test
$ make test-cli
Version up
make release version=x.y.z
Licence
MIT
This software is released under the MIT License, see LICENSE.txt.
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 Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.
Built Distribution
owcli-0.8.0-py3-none-any.whl
(12.1 kB
view hashes)