Skip to content

Commit 794ace7

Browse files
committed
Docs: Plugins: Add section for new "Fire Web Hook" built-in plugin.
1 parent 89bdb9a commit 794ace7

1 file changed

Lines changed: 21 additions & 0 deletions

File tree

docs/plugins.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ Several built-in Event Plugins ship with xyOps. They are:
1919
| **[Shell Plugin](#shell-plugin)** | The Shell Plugin allows you to easily create events that execute arbitrary shell code, without having to learn the xyOps Plugin API. |
2020
| **[HTTP Request Plugin](#http-request-plugin)** | The HTTP Plugin can send HTTP requests to any URL, and supports a variety of protocols and options, including custom headers and custom body content. |
2121
| **[Test Plugin](#test-plugin)** | The Test Plugin exists mainly to test xyOps, but it can also be useful for testing pieces of workflows. It outputs sample data and optionally a sample file, which are passed to downstream events, if connected. |
22+
| **[Fire Web Hook Plugin](#fire-web-hook-plugin)** | The Fire Web Hook Plugin fires one of your configured xyOps web hooks as a standard job, so workflows can branch or fail based on the web hook result. |
2223
| **[Docker Plugin](#docker-plugin)** | The Docker Plugin allows you to run custom scripts inside a Docker container. Similar to the [Shell Plugin](#shell-plugin), you can specify any custom code to run, and in any language, as long as it supports a [Shebang](https://en.wikipedia.org/wiki/Shebang_%28Unix%29) line. |
2324

2425
To write your own Event Plugin, all you need is to provide a command-line executable, and have it read and write JSON over [STDIN and STDOUT](https://en.wikipedia.org/wiki/Standard_streams). Information about the current job is passed as a JSON document to your STDIN, and you can send back status updates and completion events simply by writing JSON to your STDOUT.
@@ -1644,6 +1645,26 @@ The Test Plugin exists mainly to test xyOps, but it can also be useful for testi
16441645
| **Generate Network Traffic** | `network` | Checkbox | If checked the Plugin will make continuous network requests downloading large binary data blobs (from GitHub). |
16451646
| **Upload Sample File** | `upload` | Checkbox | If checked the Plugin will produce a sample file and attach it to the job output. |
16461647

1648+
### Fire Web Hook Plugin
1649+
1650+
xyOps ships with a built-in "Fire Web Hook" Plugin, which you can use to fire one of your configured [Web Hooks](webhooks.md) as a standard job. This is useful when web hook delivery needs to be part of a workflow's actual job graph, rather than a follow-up [Action](actions.md) that runs after another job has already completed.
1651+
1652+
The standard Web Hook action is still the best fit for notifications and side effects, where delivery failure should not change the original job's outcome. The Fire Web Hook Plugin is different: the web hook is the job. If the web hook succeeds, the job succeeds. If the web hook fails, the job fails, and you can branch, retry, abort the workflow, or run other follow-up logic based on that result.
1653+
1654+
> [!NOTE]
1655+
> This Plugin is included with new installs starting in xyOps v1.0.69 and xySat v1.0.31. Existing installations upgraded from earlier versions may need to import the [Fire Web Hook Plugin import file](https://pixlcore.com/software/xywiki/xyops-plugin-hookplug.json), because xyOps upgrades do not currently mutate existing system configuration.
1656+
1657+
Here are the parameters it accepts:
1658+
1659+
| Param Name | Param ID | Type | Description |
1660+
|------------|----------|------|-------------|
1661+
| **Web Hook** | `web_hook` | System Menu | Select the configured xyOps web hook to fire. This field is required. |
1662+
| **Custom Text** | `text` | Text Box | Optionally enter custom text to append to the standard generated web hook message. |
1663+
1664+
The selected web hook still uses the normal web hook definition, including its URL, method, headers, body, secrets, timeout, retries, redirect settings, TLS settings, and `{{ ... }}` template expressions. See [Web Hooks](webhooks.md) for more details.
1665+
1666+
Note that the **Custom Text** parameter only matters if the selected web hook template uses the standard `{{text}}` value somewhere, for example in a JSON body field such as `text`, `content`, or `message`. If your web hook body does not reference `{{text}}`, then this extra text is not sent to the remote endpoint.
1667+
16471668
### Docker Plugin
16481669

16491670
The Docker Plugin allows you to run custom scripts inside a Docker container. Similar to the [Shell Plugin](#shell-plugin), you can specify any custom code to run, and in any language, as long as it supports a [Shebang](https://en.wikipedia.org/wiki/Shebang_%28Unix%29) line.

0 commit comments

Comments
 (0)