Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions providers/apprise/provider.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,27 @@ hooks:
connection-types:
- hook-class-name: airflow.providers.apprise.hooks.apprise.AppriseHook
connection-type: apprise
conn-fields:
config:
label: config
schema:
type:
- string
- 'null'
format: password
description: |
format example - {"path": "service url", "tag": "alerts"} or
[{"path": "service url", "tag": "alerts"}, {"path": "service url",
"tag": "alerts"}]
ui-field-behaviour:
hidden-fields:
- host
- schema
- login
- password
- port
- extra
relabeling: {}

notifications:
- airflow.providers.apprise.notifications.apprise.AppriseNotifier
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,17 @@ def get_provider_info():
{
"hook-class-name": "airflow.providers.apprise.hooks.apprise.AppriseHook",
"connection-type": "apprise",
"conn-fields": {
"config": {
"label": "config",
"schema": {"type": ["string", "null"], "format": "password"},
"description": 'format example - {"path": "service url", "tag": "alerts"} or\n[{"path": "service url", "tag": "alerts"}, {"path": "service url",\n"tag": "alerts"}]\n',
}
},
"ui-field-behaviour": {
"hidden-fields": ["host", "schema", "login", "password", "port", "extra"],
"relabeling": {},
},
}
],
"notifications": ["airflow.providers.apprise.notifications.apprise.AppriseNotifier"],
Expand Down
7 changes: 7 additions & 0 deletions providers/discord/provider.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,13 @@ hooks:
connection-types:
- hook-class-name: airflow.providers.discord.hooks.discord_webhook.DiscordWebhookHook
connection-type: discord
conn-fields:
webhook_endpoint:
label: Webhook Endpoint
schema:
type:
- string
- 'null'

notifications:
- airflow.providers.discord.notifications.discord.DiscordNotifier
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,9 @@ def get_provider_info():
{
"hook-class-name": "airflow.providers.discord.hooks.discord_webhook.DiscordWebhookHook",
"connection-type": "discord",
"conn-fields": {
"webhook_endpoint": {"label": "Webhook Endpoint", "schema": {"type": ["string", "null"]}}
},
}
],
"notifications": ["airflow.providers.discord.notifications.discord.DiscordNotifier"],
Expand Down
8 changes: 8 additions & 0 deletions providers/opsgenie/provider.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,14 @@ hooks:
connection-types:
- hook-class-name: airflow.providers.opsgenie.hooks.opsgenie.OpsgenieAlertHook
connection-type: opsgenie
ui-field-behaviour:
hidden-fields:
- port
- schema
- login
- extra
relabeling:
password: Opsgenie API Key

notifications:
- airflow.providers.opsgenie.notifications.opsgenie.OpsgenieNotifier
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,10 @@ def get_provider_info():
{
"hook-class-name": "airflow.providers.opsgenie.hooks.opsgenie.OpsgenieAlertHook",
"connection-type": "opsgenie",
"ui-field-behaviour": {
"hidden-fields": ["port", "schema", "login", "extra"],
"relabeling": {"password": "Opsgenie API Key"},
},
}
],
"notifications": ["airflow.providers.opsgenie.notifications.opsgenie.OpsgenieNotifier"],
Expand Down
26 changes: 26 additions & 0 deletions providers/pagerduty/provider.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -75,8 +75,34 @@ integrations:
connection-types:
- hook-class-name: airflow.providers.pagerduty.hooks.pagerduty.PagerdutyHook
connection-type: pagerduty
conn-fields:
routing_key:
label: Routing Key
schema:
type:
- string
- 'null'
format: password
ui-field-behaviour:
hidden-fields:
- port
- login
- schema
- host
- extra
relabeling:
password: Pagerduty API token
- hook-class-name: airflow.providers.pagerduty.hooks.pagerduty_events.PagerdutyEventsHook
connection-type: pagerduty_events
ui-field-behaviour:
hidden-fields:
- port
- login
- schema
- host
- extra
relabeling:
password: Pagerduty Integration key

hooks:
- integration-name: Pagerduty
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,10 +38,24 @@ def get_provider_info():
{
"hook-class-name": "airflow.providers.pagerduty.hooks.pagerduty.PagerdutyHook",
"connection-type": "pagerduty",
"conn-fields": {
"routing_key": {
"label": "Routing Key",
"schema": {"type": ["string", "null"], "format": "password"},
}
},
"ui-field-behaviour": {
"hidden-fields": ["port", "login", "schema", "host", "extra"],
"relabeling": {"password": "Pagerduty API token"},
},
},
{
"hook-class-name": "airflow.providers.pagerduty.hooks.pagerduty_events.PagerdutyEventsHook",
"connection-type": "pagerduty_events",
"ui-field-behaviour": {
"hidden-fields": ["port", "login", "schema", "host", "extra"],
"relabeling": {"password": "Pagerduty Integration key"},
},
},
],
"hooks": [
Expand Down
65 changes: 65 additions & 0 deletions providers/slack/provider.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -134,8 +134,73 @@ transfers:
connection-types:
- hook-class-name: airflow.providers.slack.hooks.slack.SlackHook
connection-type: slack
ui-field-behaviour:
hidden-fields:
- login
- port
- host
- schema
- extra
relabeling:
password: Slack API Token
placeholders:
password: REPLACE ME WITH A SLACK ACCESS TOKEN
timeout: '30'
base_url: https://www.slack.com/api/
proxy: http://localhost:9000
conn-fields:
timeout:
label: Timeout
schema:
type:
- integer
- 'null'
description: Optional. Max seconds to wait for Slack API response.
base_url:
label: Base URL
schema:
type:
- string
- 'null'
description: Optional. A string representing the Slack API base URL.
proxy:
label: Proxy
schema:
type:
- string
- 'null'
description: Optional. Proxy to make the Slack API call.
- hook-class-name: airflow.providers.slack.hooks.slack_webhook.SlackWebhookHook
connection-type: slackwebhook
ui-field-behaviour:
hidden-fields:
- login
- port
- extra
relabeling:
host: Slack Webhook Endpoint
password: Webhook Token
placeholders:
schema: https
host: hooks.slack.com/services
password: T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX
timeout: '30'
proxy: http://localhost:9000
conn-fields:
timeout:
label: Timeout
schema:
type:
- integer
- 'null'
description: Optional. Max seconds to wait for Slack Incoming Webhook response.
proxy:
label: Proxy
schema:
type:
- string
- 'null'
description: Optional. Proxy to make the Slack Incoming Webhook call.

notifications:
- airflow.providers.slack.notifications.slack.SlackNotifier
Expand Down
55 changes: 54 additions & 1 deletion providers/slack/src/airflow/providers/slack/get_provider_info.py
Original file line number Diff line number Diff line change
Expand Up @@ -80,10 +80,63 @@ def get_provider_info():
},
],
"connection-types": [
{"hook-class-name": "airflow.providers.slack.hooks.slack.SlackHook", "connection-type": "slack"},
{
"hook-class-name": "airflow.providers.slack.hooks.slack.SlackHook",
"connection-type": "slack",
"ui-field-behaviour": {
"hidden-fields": ["login", "port", "host", "schema", "extra"],
"relabeling": {"password": "Slack API Token"},
"placeholders": {
"password": "REPLACE ME WITH A SLACK ACCESS TOKEN",
"timeout": "30",
"base_url": "https://www.slack.com/api/",
"proxy": "http://localhost:9000",
},
},
"conn-fields": {
"timeout": {
"label": "Timeout",
"schema": {"type": ["integer", "null"]},
"description": "Optional. Max seconds to wait for Slack API response.",
},
"base_url": {
"label": "Base URL",
"schema": {"type": ["string", "null"]},
"description": "Optional. A string representing the Slack API base URL.",
},
"proxy": {
"label": "Proxy",
"schema": {"type": ["string", "null"]},
"description": "Optional. Proxy to make the Slack API call.",
},
},
},
{
"hook-class-name": "airflow.providers.slack.hooks.slack_webhook.SlackWebhookHook",
"connection-type": "slackwebhook",
"ui-field-behaviour": {
"hidden-fields": ["login", "port", "extra"],
"relabeling": {"host": "Slack Webhook Endpoint", "password": "Webhook Token"},
"placeholders": {
"schema": "https",
"host": "hooks.slack.com/services",
"password": "T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX",
"timeout": "30",
"proxy": "http://localhost:9000",
},
},
"conn-fields": {
"timeout": {
"label": "Timeout",
"schema": {"type": ["integer", "null"]},
"description": "Optional. Max seconds to wait for Slack Incoming Webhook response.",
},
"proxy": {
"label": "Proxy",
"schema": {"type": ["string", "null"]},
"description": "Optional. Proxy to make the Slack Incoming Webhook call.",
},
},
},
],
"notifications": [
Expand Down
88 changes: 88 additions & 0 deletions providers/smtp/provider.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,94 @@ hooks:
connection-types:
- hook-class-name: airflow.providers.smtp.hooks.smtp.SmtpHook
connection-type: smtp
conn-fields:
from_email:
label: From email
schema:
type:
- string
- 'null'
timeout:
label: Connection timeout
schema:
type:
- integer
- 'null'
default: 30
retry_limit:
label: Number of Retries
schema:
type:
- integer
- 'null'
default: 5
disable_tls:
label: Disable TLS
schema:
type:
- boolean
- 'null'
default: false
disable_ssl:
label: Disable SSL
schema:
type:
- boolean
- 'null'
default: false
subject_template:
label: Path to the subject template
schema:
type:
- string
- 'null'
html_content_template:
label: Path to the html content template
schema:
type:
- string
- 'null'
auth_type:
label: Auth Type
schema:
type:
- string
- 'null'
default: basic
enum:
- basic
- oauth2
description: basic or oauth2
access_token:
label: Access Token
schema:
type:
- string
- 'null'
client_id:
label: Client ID
schema:
type:
- string
- 'null'
client_secret:
label: Client Secret
schema:
type:
- string
- 'null'
tenant_id:
label: Tenant ID
schema:
type:
- string
- 'null'
scope:
label: Scope
schema:
type:
- string
- 'null'
ui-field-behaviour:
hidden-fields: ['schema', 'extra']
relabeling: {}
Expand Down
Loading
Loading