Metadata-Version: 2.1
Name: PluginsPy
Version: 0.0.5
Summary: Plugins Framework
Home-page: https://github.com/ZengjfOS/PluginsPy
Author: zengjf
Author-email: zengjf42@163.com
License: UNKNOWN
Project-URL: Bug Tracker, https://github.com/ZengjfOS/PluginsPy/issues
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.0
Description-Content-Type: text/markdown

# 一、README

以Plugin的形式集成命令行脚本，便于脚本的集中管理

**所有的插件放在项目Plugins目录，或者指定插件目录，才能被检查到**

## 二、安装

* pypi
  * `pip3 install PluginsPy`
* 手动安装
  * `pip3 uninstall PluginsPy`
  * `pip3 install PluginsPy-0.0.5-py3-none-any.whl --force-reinstall`
  * `python3 -m pip show PluginsPy`

## 三、使用示例

### 3.1 插件自动生成run方法

使用Decorator添加run()方法

```python
import PluginsPy as PluginsPy

@PluginsPy.addRun
class PluginExample:
```

### 3.2 插件参数声明

* 第一行是类说明，在帮助中显示
* @开头并且以:分开的是参数及其说明
* 之外的是普通说明，可以自行添加，譬如以*号开始列表

```python
@PluginsPy.addRun
class PluginExample:
    """
    PluginExample类是一个编写LogTools插件的示例

    @id: 唯一码
    @name: 唯一码别名
    """
```

### 3.3 插件使用

```python
from PluginsPy import PluginsPy

if __name__ == '__main__':
    PluginsPy(__file__)
```

## 四、示例输出

test_PluginsPy.py PluginExample

```
>>> start call Plugin run or CmdMaps method
>>> enter plugin run method
实例输出：id: 123456, name: zengjf
>>> enter plugin start method
>>> in plugin start method
{'id': '123456', 'name': 'zengjf', 'func': <bound method addRun.<locals>.run of <class 'Plugins.PluginExample.PluginExample'>>}
<<< out plugin start method
<<< end plugin start method
<<< end plugin run method
<<< end call Plugin run or CmdMaps method
```

## 五、发行PyPi处理流程

* pip3 install twine
* https://pypi.org/
  * 注册帐号
* python3 setup.py sdist bdist_wheel
* twine upload dist/*
  ```
  Uploading distributions to https://upload.pypi.org/legacy/
  Enter your username: zengjf
  Enter your password:
  Uploading PluginsPy-0.0.1-py3-none-any.whl
  100% ---------------------------------------- 8.4/8.4 kB • 00:00 • ?
  Uploading PluginsPy-0.0.1.tar.gz
  100% ---------------------------------------- 6.6/6.6 kB • 00:00 • ?
  
  View at:
  https://pypi.org/project/PluginsPy/0.0.1/
  ```


