docs: update readme
This commit is contained in:
@@ -1 +1,58 @@
|
|||||||
# Project Manager
|
# Project Manager
|
||||||
|
|
||||||
|
## Install
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pip install project-manager -i https://instreamatic.com/nexus/repository/pypi/simple/
|
||||||
|
```
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
### Show tasks list
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pm [-v] [-vv]
|
||||||
|
```
|
||||||
|
|
||||||
|
### Run task
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pm <task> [-v] [-vv]
|
||||||
|
```
|
||||||
|
|
||||||
|
## Presets locations
|
||||||
|
|
||||||
|
- default presets `$PROJECT_MANAGER/project_manager/preset/default/*.toml`
|
||||||
|
- user preset `$HOME/.preset.toml`
|
||||||
|
- project preset `./.preset.toml`
|
||||||
|
|
||||||
|
|
||||||
|
## Preset format
|
||||||
|
|
||||||
|
### Template
|
||||||
|
|
||||||
|
```toml
|
||||||
|
[presets.<entry_type>.tasks.<task_name>.<tag>]
|
||||||
|
conditions = ["<condition>"]
|
||||||
|
commands = ["<command>"]
|
||||||
|
```
|
||||||
|
|
||||||
|
### Copy default config sample
|
||||||
|
|
||||||
|
```toml
|
||||||
|
[presets.config.tasks.setup.config]
|
||||||
|
conditions = ["file(config/base.yaml)", "file(config/current.yaml) | not"]
|
||||||
|
commands = ["cp ../../config/admin/dev/localhost.yaml config/current.yaml"]
|
||||||
|
```
|
||||||
|
|
||||||
|
## Condition pipe format
|
||||||
|
|
||||||
|
`function_name1(arg1,arg2) | function_name2(arg1)`
|
||||||
|
|
||||||
|
### Condition functions
|
||||||
|
|
||||||
|
- **file**: `file(filename)` - check file/directory exists or load file content as dict for next pipe
|
||||||
|
- **get**: `get(keypath)` - get value from dict by key path with dot separator
|
||||||
|
- **not**: `not` - invert pipe value as bool
|
||||||
|
- **equal**: `equal(string)` - compare pipe value with string
|
||||||
|
- **search**: `search(regexp, [index=1])` - match pipe value with regexp and return matched group by index (default 1)
|
||||||
|
|||||||
Reference in New Issue
Block a user