adnanh webhook 框架 hook 定义
Hook
hook 是一个SON对象。钩子对象必须包含id和execute-command属性。所有其他属性都被视为可选。
属性
- id - 指定hook的ID。方式格式(http://server:port/ hooks/your-hook-id)
- execute-command - 指定触发hook时应执行的命令
- command-working-directory - 指定脚本执行时的工作目录
- response-message - 指定将返回的字符串
- response-headers- 指定响应header
- include-command-output-in-response - boolean webhook是否应该等待命令完成并返回原始输出作为对hook启动器的响应。如果执行响应时命令无法执行或遇到任何错误,将导致500内部服务器错误HTTP状态代码,否则将返回200 OK状态代码。
- include-command-output-in-response-on-error - boolean webhook是否应该包含命令stdout和stderror作为失败执行中的响应。它仅在include-command-output-in-response设置为时才有效true。
- parse-parameters-as-json - 指定包含JSON字符串的参数列表。这些参数将由webhook解码,您可以像规则和规则中的常规对象一样访问它们pass-arguments-to-command。
- pass-arguments-to-command - 指定将传递给命令的参数列表。检查“ 引用请求值”页面以查看如何引用请求中的值。如果要将静态字符串值传递给命令,可以将其指定为 { "source": "string", "name": "argumentvalue" }
- pass-environment-to-command - 指定将作为环境变量传递给命令的参数列表。如果未"envname"在引用的值中指定字段,则挂钩的格式为“HOOK_argumentname”,否则将使用“envname”字段作为其名称。检查“ 引用请求值”页面以查看如何引用请求中的值。如果要将静态字符串值传递给命令,可以将其指定为 { "source": "string", "envname": "SOMETHING", "name": "argumentvalue" }
- pass-file-to-command - 指定将序列化为文件的条目列表。传入的数据将在请求临时文件中序列化(否则并行调用该钩子将导致文件的并发覆盖)。要在后续脚本中寻址的文件名是通过环境变量提供的。使用envname指定环境变量的名称。如果envname未提供HOOK_,则使用用于引用请求值的名称。定义command-working-directory将相对于此位置存储文件,如果未提供,将使用系统临时文件目录。如果base64decode为真,则在将输入的二进制数据存储到文件中之前,将对其进行基本64解码。默认情况下,webhook退出后将删除相应的文件。
- trigger-rule - 指定将被评估的规则,以确定是否应该触发挂钩。选中Hook规则页面以查看有效规则及其用法列表
- trigger-rule-mismatch-http-response-code - 指定不满足触发规则时要返回的HTTP状态代码