@@ -5,4 +5,159 @@ sidebar_position: 4
55
66# Notifications
77
8- The documentation section is still a work in progress.
8+ Vortex provides a flexible notification system that sends updates across
9+ multiple channels.
10+
11+ Notifications are triggered automatically during deployment to a hosting
12+ environment, and can be configured to suit your team's communication needs.
13+
14+ ## Channels
15+
16+ Configure notification channels in your ` .env ` file:
17+
18+ ``` bash title=".env"
19+ # Enable notification channels (comma-separated list)
20+ VORTEX_NOTIFY_CHANNELS=email,slack,github
21+ ```
22+
23+ Available channels: ` email ` , ` github ` , ` jira ` , ` newrelic ` , ` slack ` , ` webhook `
24+
25+ ## Global environment variables
26+
27+ These variables apply to all notification channels unless overridden by channel-specific settings.
28+
29+ ### Setup
30+
31+ None
32+
33+ | Variable | Required | Default | Location | Description |
34+ | -------------------------| ----------| --------------------| ----------| -----------------------------------------------------------|
35+ | ` VORTEX_NOTIFY_PROJECT ` | No | ` VORTEX_PROJECT ` | ` .env ` | Project name used in notifications |
36+ | ` VORTEX_NOTIFY_SKIP ` | No | | Hosting | Set to ` 1 ` to skip all notifications |
37+
38+ ## Email
39+
40+ Send deployment notification via email.
41+
42+ ### Setup
43+
44+ 1 . Add ` VORTEX_NOTIFY_EMAIL_FROM ` variable to ` .env ` file with the value of the email address that is allowed to be sent from your hosting.
45+ 2 . Add
` VORTEX_NOTIFY_EMAIL_RECIPIENTS ` variable to
` .env ` file with a list of recipients in format
` [email protected] |Webmaster` (comma-separated for multiple recipients).
46+
47+ ### Environment variables
48+
49+ | Variable | Required | Default | Location | Description |
50+ | ----------------------------------| ----------| ---------| ----------| ------------------------------------------------------------|
51+ | ` VORTEX_NOTIFY_EMAIL_FROM ` | Yes | | ` .env ` | Email address to send notifications from |
52+ | ` VORTEX_NOTIFY_EMAIL_RECIPIENTS ` | Yes | | ` .env ` | Comma-separated list of recipients (format: ` email\|name ` ) |
53+
54+ <details >
55+ <summary >Example</summary >
56+
57+ ** Subject:**
58+ ```
59+ My Project deployment notification of "main" branch
60+ ```
61+
62+ ** Body:**
63+ ```
64+ ## This is an automated message ##
65+
66+ Site My Project "main" branch has been deployed at 15/01/2025 14:30:45 UTC and is available at https://example.com.
67+
68+ Login at: https://example.com/user/login
69+ ```
70+
71+ </details >
72+
73+ ## GitHub
74+
75+ Provide a link to the deployment environment in GitHub.
76+
77+ ### Setup
78+
79+ None
80+
81+ ### Environment variables
82+
83+ | Variable | Required | Default | Location | Description |
84+ | -----------------------------------| ----------| ---------| ----------| -----------------------------------|
85+ | ` VORTEX_NOTIFY_GITHUB_TOKEN ` | Yes | | Hosting | GitHub personal access token |
86+ | ` VORTEX_NOTIFY_GITHUB_REPOSITORY ` | Yes | | Hosting | Repository in ` owner/repo ` format |
87+
88+ ## JIRA
89+
90+ Post a deployment comment and, optionally, update issue status and assignee in JIRA.
91+
92+ ### Setup
93+
94+ None
95+
96+ ### Environment variables
97+
98+ | Variable | Required | Default | Location | Description |
99+ | -------------------------------------| ----------| ----------------------------------| ----------| ---------------------------------------|
100+ | ` VORTEX_NOTIFY_JIRA_TOKEN ` | Yes | | Hosting | JIRA API token |
101+ | ` VORTEX_NOTIFY_JIRA_USER ` | Yes | | ` .env ` | JIRA user email address |
102+ | ` VORTEX_NOTIFY_JIRA_ASSIGNEE ` | No | | ` .env ` | User email to assign issue to |
103+ | ` VORTEX_NOTIFY_JIRA_TRANSITION ` | No | | ` .env ` | State to transition issue to |
104+ | ` VORTEX_NOTIFY_JIRA_ENDPOINT ` | No | ` https://jira.atlassian.com ` | ` .env ` | JIRA API endpoint |
105+ | ` VORTEX_NOTIFY_JIRA_COMMENT_PREFIX ` | No | ` "Deployed to " ` | ` .env ` | Comment prefix |
106+
107+ ## New Relic
108+
109+ Add a deployment marker in New Relic APM.
110+
111+ ### Setup
112+
113+ None
114+
115+ ### Environment variables
116+
117+ | Variable | Required | Default | Location | Description |
118+ | --------------------------------------| ----------| ----------------------------------------------------------------------------| ----------| -----------------------------------|
119+ | ` VORTEX_NOTIFY_NEWRELIC_APIKEY ` | Yes | | Hosting | New Relic API key |
120+ | ` VORTEX_NOTIFY_NEWRELIC_PROJECT ` | No | ` VORTEX_NOTIFY_PROJECT ` | ` .env ` | Project name |
121+ | ` VORTEX_NOTIFY_NEWRELIC_APP_NAME ` | No | ` VORTEX_NOTIFY_NEWRELIC_PROJECT-VORTEX_NOTIFY_NEWRELIC_REF ` | ` .env ` | Application name in New Relic |
122+ | ` VORTEX_NOTIFY_NEWRELIC_APPID ` | No | | ` .env ` | Application ID (auto-discovered) |
123+ | ` VORTEX_NOTIFY_NEWRELIC_DESCRIPTION ` | No | ` "{ref} deployed" ` | ` .env ` | Deployment description |
124+ | ` VORTEX_NOTIFY_NEWRELIC_CHANGELOG ` | No | ` VORTEX_NOTIFY_NEWRELIC_DESCRIPTION ` | ` .env ` | Deployment changelog |
125+ | ` VORTEX_NOTIFY_NEWRELIC_USER ` | No | ` Deployment robot ` | ` .env ` | User performing deployment |
126+ | ` VORTEX_NOTIFY_NEWRELIC_ENDPOINT ` | No | ` https://api.newrelic.com/v2 ` | ` .env ` | API endpoint |
127+
128+ ## Slack
129+
130+ Post deployment notification to Slack a channel.
131+
132+ ### Setup
133+
134+ None
135+
136+ ### Environment variables
137+
138+ | Variable | Required | Default | Location | Description |
139+ | ----------------------------------| ----------| ----------------------------| ----------| --------------------------------------------------------------------|
140+ | ` VORTEX_NOTIFY_SLACK_WEBHOOK ` | Yes | | Hosting | Slack Incoming Webhook URL |
141+ | ` VORTEX_NOTIFY_SLACK_PROJECT ` | No | ` VORTEX_NOTIFY_PROJECT ` | ` .env ` | Project name |
142+ | ` VORTEX_NOTIFY_SLACK_CHANNEL ` | No | | ` .env ` | Target channel (overrides webhook default, e.g., ` #channel ` ) |
143+ | ` VORTEX_NOTIFY_SLACK_USERNAME ` | No | ` Deployment Bot ` | ` .env ` | Bot display name |
144+ | ` VORTEX_NOTIFY_SLACK_ICON_EMOJI ` | No | ` :rocket: ` | ` .env ` | Bot icon emoji |
145+
146+ ## Webhook
147+
148+ Send custom HTTP request to a webhook endpoint.
149+
150+ ### Setup
151+
152+ None
153+
154+ ### Environment variables
155+
156+ | Variable | Required | Default | Location | Description |
157+ | -----------------------------------------| ----------| -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -------------------| ------------------------------------------|
158+ | ` VORTEX_NOTIFY_WEBHOOK_URL ` | Yes | | ` .env ` or Hosting | Webhook endpoint URL |
159+ | ` VORTEX_NOTIFY_WEBHOOK_PROJECT ` | No | ` VORTEX_NOTIFY_PROJECT ` | Hosting | Project name |
160+ | ` VORTEX_NOTIFY_WEBHOOK_METHOD ` | No | ` POST ` | ` .env ` | HTTP method |
161+ | ` VORTEX_NOTIFY_WEBHOOK_HEADERS ` | No | ` Content-Type: application/json ` | ` .env ` | Pipe-separated headers |
162+ | ` VORTEX_NOTIFY_WEBHOOK_PAYLOAD ` | No | <code >\{\" channel\" : \" Channel 1\" , \" message\" : \" %message%\" , \" project\" : \" %project%\" , \" ref\" : \" %ref%\" , \" timestamp\" : \" %timestamp%\" , \" environment_url\" : \" %environment_url%\"\} </code > | ` .env ` | JSON payload with substitution variables |
163+ | ` VORTEX_NOTIFY_WEBHOOK_RESPONSE_STATUS ` | No | ` 200 ` | ` .env ` | Expected HTTP status code |
0 commit comments