运行插件

下面描述了如何运行插件,并继续使用示例插件插件规范

icon-plugin工具

更多的文档icon-plugin可在插件工具

关于icon-plugin

  • 方法的最佳工具
  • icon-plugin工具是主要的插件开发工具,应该用来管理任何插件
  • 安装说明icon-plugin可在开始文档。

运行和测试插件

现在已经构建好了插件shell,让我们来看看一些插件命令,它们是由插件shell生成的代码生成的。

帮助命令

要查看插件可执行文件支持哪些命令,请运行以下命令:

         
1
$ icon-plugin run——help
2
使用:icon-plugin run [] […]
3.
4
运行插件
5
6
国旗:
7
显示上下文敏感的帮助(也可以尝试——help-long和——help-man)。
8
-v,——verbose verbose模式。
9
——version显示应用版本。
10
-f,——specfile= specfile要使用的插件规格的路径(例如./plugin.spec.yaml)。
11
围绕给定的-T/-R选项创建PR评估。
12
启用缓存(def: /var/cache)。
13
-c,——command= command在container info中运行命令|sample|samples|test|run|http|bash
14
-d,——debug调试模式。
15
-j,——jq通过jq管道。
16
-m,——rebuild在执行之前生成插件。
17
-V,——volume= volume卷挂载(例如:/src/dst)。
18
-p,——port= port端口转发(例如:8000:8888/udp)。
19
- t,测试=测试……运行JSON测试方法(例如
20.
- r, =跑……运行JSON运行方法(例如
21
22
参数:
23
[]命令标志的附加参数

Info命令

info命令将打印插件元数据。

         
1
$ icon-plugin run -c info
2
INFO[0000]运行命令:docker run——rm -i rapid7/base64:1.1.1 INFO <
3.
名称:Base64
4
供应商:rapid7
5
版本:1.1.1
6
描述:使用base64字母表编码和解码数据
7
8
行动(2):
9
├─├─decode (decode Base64 to data)
10
├─生物学家(1)

测试命令

你可以使用测试命令来测试插件测试()方法,除非连接文件中有测试方法。请注意,测试()应该在连接中设置,而不是在动作或触发器中。它通常用于测试网络访问和验证任何用户提供的凭据。

对于本例,我们将对以下代码进行更改komand_example /动作/ say_goodbye / action.py然后用使

         
python
1
2
3.
def测试自我
4
# TODO:实现测试功能
5
自我日志记录器信息“对%s说再见”“测试”
6
返回“消息”“再见了考验!”

测试

使用icon-plugin运行插件的测试方法:

         
1
$ icon-plugin运行-T tests/decode。json - j
2
INFO[0000]运行命令:docker run——rm -i rapid7/base64:1.1.1 test < tests/decode.json
3.
信息[0003]输出:
4
5
“数据”:“base64”
6

运行命令

运行命令用于通过执行run ()方法在动作/触发器文件中。当开发时,请确保您使用——调试标志,以便所有输出显示为stdin和stdout

请注意——调试用于从命令行测试触发器,必须用于绕过URL回调。

对于本例,我们对以下代码进行了更改komand_example /动作/ say_goodbye / action.py然后用使

         
python
1
2
def运行自我参数个数
3.
# TODO:实现运行函数
4
的名字参数个数得到“名字”
5
自我日志记录器信息“对%s说再见”的名字
6
味精“再见{}!”格式的名字
7
返回“消息”味精

运行

使用icon-plugin运行插件的Run方法:

         
1
$ icon-plugin run -R tests/decode。json - j
2
INFO[0000]运行命令:docker run——rm -i rapid7/base64:1.1.1 run < tests/decode.json
3.
信息[0002]输出:
4
5
“数据”:“嘿,这,是,酷吧\ ntell,我,什么,你认为\ n”
6

执行所有运行和测试

要运行所有操作和触发器,请使用all参数,而不是选择一个特定的文件。

         
1
$ icon-plugin run -R all -T all -j
2
INFO[0000]运行命令:docker run——rm -i rapid7/base64:1.1.1 run < tests/decode.json
3.
信息[0003]输出:
4
5
“数据”:“嘿,这,是,酷吧\ ntell,我,什么,你认为\ n”
6
7
INFO[0003]运行命令:docker run——rm -i rapid7/base64:1.1.1 run < tests/encode.json
8
信息[0006]输出:
9
10
“数据”:“bGV0cyBlbmNvZGUgdGhpcyBtZXNzYWdlCnNpbGx5IGJveQ = =”
11
12
INFO[0006]运行命令:docker run——rm -i rapid7/base64:1.1.1 test < tests/decode.json
13
信息[0010]输出:
14
15
“数据”:“base64”
16
17
INFO[0010]运行命令:docker run——rm -i rapid7/base64:1.1.1 test < tests/encode.json
18
信息[0013]输出:
19
20.
“数据”:“YmFzZTY0”
21

创建评估

当分支准备好被合并时在开源Github repo上,每个pull请求都需要一个评估。这可以通过使用标志的icon-plugin生成——一个

生成一个评价:

         
1
$ icon-plugin run -R tests/decode。json - a - j
2
INFO[0000]运行命令:docker run——rm -i rapid7/base64:1.1.1 run < tests/decode.json
3.
信息[0002]输出:
4
5
“数据”:“嘿,这,是,酷吧\ ntell,我,什么,你认为\ n”
6
7
8
# #评估
9
# # #运行
10
11
<详细>
12
13
```
14
15
“身体”:{
16
“日志”:“rapid7 / Base64:1.1.1。步骤名称:解码\ n”,
17
“元”:{},
18
"输出":{
19
“数据”:“嘿,这,是,酷吧\ ntell,我,什么,你认为\ n”
20.
},
21
“状态”:“ok”
22
},
23
“类型”:“action_event”,
24
“版本”:“v1”
25
26
27
```
28
29
<摘要>
30.
Docker运行——rm -i rapid7/base64:1.1.1运行
31
> < /总结
32
< / >详细信息
33
34
# # # UI
35
36
在Komand中用来验证使用的插件的屏幕截图在这一行以下。
37
38
# # # #工作流生成器
39
40
41
# # # #的工作
42
43
44
# # # #工件