Skip to content

Add native Webex (Cisco Webex) support as ALERT_SINK #1130

@agoettl

Description

@agoettl

Is your feature request related to a problem?

Yes. Reloader supports ALERT_SINK values slack, teams, gchat, and webhook. When using webhook with a Cisco Webex Incoming Webhook URL, no alert is delivered because Webex expects a specific JSON payload format ({"markdown": "..."}) that differs from the raw text payload Reloader sends by default.

There is no way to customize the webhook payload format, so Webex users currently cannot receive reload alerts without building a middleware/proxy to transform the payload.

Describe the solution you'd like

Add webex as a supported value for ALERT_SINK. When set, Reloader should POST to the configured ALERT_WEBHOOK_URL with the payload format Webex expects:

{
  "markdown": "**Reloader Alert**\nWorkload `my-deployment` in namespace `my-namespace` was reloaded due to a change in `my-secret`.\n\nAdditional Info: Triggered by Reloader in staging"
}

Header: Content-Type: application/json

Configuration example:

reloader:
  deployment:
    env:
      secret:
        ALERT_ON_RELOAD: "true"
        ALERT_SINK: "webex"
        ALERT_WEBHOOK_URL: "https://webexapis.com/v1/webhooks/incoming/..."
        ALERT_ADDITIONAL_INFO: "Triggered by Reloader in production"

Describe alternatives you've considered

  1. Using ALERT_SINK: "webhook" — does not work because the default payload format is not accepted by Webex.
  2. Deploying a proxy service that receives the raw webhook and transforms it into the Webex format — works but adds unnecessary complexity and an extra component to maintain.

Additional context

  • Webex Incoming Webhooks docs: https://developer.webex.com/docs/webhooks
  • Webex is widely used in enterprise environments; native support would benefit many users.
  • The implementation should be minimal — essentially a new case in the alert sink switch that formats the payload as {"markdown": "..."} instead of raw text.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions