Syncs PD On-call to Slack User Group
Project description
pd2Slack
This python project will automatically sync on call PagerDuty services to Slack User Groups.
For example if you have an on call schedule such as:
It will automatically create a slack user group as follows
With "Sidhartha Premkumar" as the sole member of @backend-oncall.
The mapping is done via email matching, this assumes the pager duty email matches the slack email.
Running
To run, all you have to do is:
> pip3 install pd2slack
> pd2slack -slackApiKey {SLACK_API_KEY} -pdApiKey {PD_API_KEY} -config {PATH_TO_CONFIG}
We also support environment variable, for example:
> export SLACK_API_KEY=123
> export PD_API_KEY=123
> pd2Slack
Deploying
You can deploy this program by running the process pd2Slack
on a schedule (based on how often you want to update). A cron might be the best way to deploy
Slack token permissions: You will need the following permissions on your slack token:
users:read.email
users:read
usergroups:write
usergroups:read
Custom Slack UserGroup Name
You can optionally pass -configPath
to the command that points to a config (see exampleConfig.json
). This mapping will be used to only sync PagerDuty schedules with the name as a key in serviceMapping
with the slackGroup that is the corresponding value.
In the example config we will only attempt to sync pager duty schedules with the name Backend Pd Name
with the slack alias @slackAliasToUse-oncall
.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file pd2slack-0.66.tar.gz
.
File metadata
- Download URL: pd2slack-0.66.tar.gz
- Upload date:
- Size: 256.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e7a35f93b79c378c0f47ecfe0953e628f7e1b8e144f560280cf6b192986f42ef |
|
MD5 | 93e97e0cfea49d21956cd41b226b6f3b |
|
BLAKE2b-256 | 51fc01529d07e0a4cbd549fa5edf2a014084d42685aeaf0690e2e7628cafd725 |