An Azure Function and associated resources that takes RSS feeds of cloud news (eg AWS What's New), generates a 3-sentence summary with Azure's Text Analytics, and sends the summary to Slack (with a link to the original post).
The Function polls the relevant RSS feeds every 30 minutes.
It is expected that the total usage cost of all the included resources (Functions, Storage Accounts, and Language Cognitive Services) will be approximately $1/month. For additional pricing information, see
Supporting resources are maintained in IaC with Pulumi.
- Head to the pulumi/ directory and follow the instructions to deploy that stack.
- Deploy the Azure Functions in the functions/ directory using either the Functions CLI, or the VS Code extension, choosing the
python3.9
runtime. Ensure that you set the required Applications Settings as detailed below in the deployed Function App resource.- Note: If you deployed the Functions before setting the below config in the Function App resource, you may need to redeploy the functions for it to take effect.
The following Application Settings are required to be present on the deployed Function App:
AWS_ENABLED
: whether to poll for AWS news - set to1
ortrue
to enableAZURE_ENABLED
: whether to poll for Azure news - set to1
ortrue
to enableTABLE_SA_CONNECTION
: connection string for storage account created in Pulumi - available in your Storage Account resource in the PortalTABLE_NAME
: table name within storage account - listed as a Pulumi outputENVIRONMENT
: table row key - string to differentiate multiple deployments, can be anything alphanumeric, egprod
TIMER_QUEUE_NAME
: timer queue name within storage account - listed as a Pulumi outputPROCESS_QUEUE_NAME
: processing queue name within storage account - listed as a Pulumi outputCOGNITIVE_ENDPOINT
: endpoint URL (includinghttps://
) for the cognitive services resource - listed as a Pulumi outputCOGNITIVE_KEY
: key for the Cognitive Services resource - available in your Language resource in the PortalAWS_SLACK_WEBHOOK
: webhook URL for sending AWS news to Slack (not required ifAWS_ENABLED
is unset) - see the Slack docs if you aren't sureAZURE_SLACK_WEBHOOK
: webhook URL for sending Azure news to Slack (not required ifAZURE_ENABLED
is unset) - see the Slack docs if you aren't sureSLACK_FAILURE_WEBHOOK
: webhook URL for processing failure alerts to Slack - can be the same or different to the normal Slack webhook (ie optionally send failures to a different channel)
Now:
- AWS What's New (https://aws.amazon.com/about-aws/whats-new/recent/feed/)
- Azure Updates (https://azurecomcdn.azureedge.net/en-gb/updates/feed/)
Next:
- GCP News (https://cloudblog.withgoogle.com/rss/)