docs: update readme
This commit is contained in:
@@ -1 +1,58 @@
|
||||
# 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