Cloud Manager Notify is a Node.js application that listens for Cloud Manager events and sends notifications to Slack and Microsoft Teams.
- Global installation:
npm i -g @netcentric/cm-notify
- Local installation:
npm i @netcentric/cm-notify
- If installed globally:
cm-notify [COMMAND]
- If installed locally:
./node_modules/.bin/cm-notify [COMMAND]
- Usage as a library:
const {
startApp,
startNgrok,
setupGoogle,
setupAdobe
} = require('@netcentric/cm-notify');
startApp();
start:app
- Start the application server to listen for Cloud Manager eventsstart:ngrok
- Start ngroksetup:adobe
- Setup Adobe Cloud Manager pipelines datasetup:google
- Setup Google Auth Tokentest
- Post test event to the local webhook
- Create a
.env
file in the root folder with the following variables:
Minimal required envs:
# Cloud Manager envs
ORGANIZATION_NAME=orgname# used to build the URL for the Pipeline
# Messanger apps env
SLACK_WEBHOOK=webhook_url
All envs:
# Cloud Manager envs
ORGANIZATION_NAME=orgname# used to build the URL for the Pipeline
CLIENT_ID=e231#used to validate CM event
# Messanger apps env
SLACK_WEBHOOK=https://hooks.slack.com/services/123
# Teams webhook URL
TEAMS_WEBHOOK=https://prod-123.westus.logic.azure.com:443/workflows/123
# Teams email, alternative approach, if Webhook is disabled
[email protected]
# Email sender env
# Only needed if Teams email approach is used
[email protected]
# App env (optional)
PORT=4000# port to run the application, default is 4000
DATA_PATH=./.data# path to the data folder wher tokens are stored, default is ./.data
# Ngrok env (optional)
# Only needed if ngrok is used for local testing
NGROK_AUTHTOKEN=123
NGROK_DOMAIN=domain-name.ngrok-free.app
- Go to https://developer.adobe.com/console
- Create a new project
- Add Events to the project
- Select
Cloud Manager Events
- Configure Webhook URL as
this-application-URL/webhook
.
- Optional: For local testing, you can use ngrok to expose your local server to the internet.
- Optional: For exploring the events in developer console, you need to add
OAuth credentials
andI/O Management API
- Only needed for more details about the pipeline.
- Get a Cloud Manager list of pipelines
- Generate valid Cloud Manager list of pipelines
- Details in the ADOBE.md file.
- Only needed if you want to send notifications via email.
- Get Google Auth Credentials
- Generate Google Auth Token
- Details in the GMAIL.md file.
- Setup testing slack/teams channel
- Configure
.env
file - Add
.data
files - Setup Google and Adobe files
- Start the application:
cm-notify start:app
- Post a test event to the local webhook
cm-notify test