GitHub Actions thrive thanks to its ecosystem of community actions. In that community, you will find several open-sourced actions from solo developers looking to improve their workflows, but amongst those actions, you will find a number of your popular developer tools with actions in the marketplace.
GitHub Marketplace is a new way to discover and purchase tools that extend your workflow. Learn how you can publish your Action to Marketplace.
twilio-labs / actions-sms
Send an SMS through GitHub Actions
Twilio SMS GitHub Action
Send an SMS from GitHub Actions.
Prerequisites
- A Twilio Account. Sign up for free
- A Twilio API Key and Secret
Usage
-
Set up your credentials as secrets in your repository settings using
TWILIO_ACCOUNT_SID
,TWILIO_API_KEY
,TWILIO_API_SECRET
-
Add the following to your workflow
name: Twilio Sned
on
workflow_dispatch: # allows you to manually trigger the workflow
schedule: # runs on a cron, nightly
- cron: 0 0 * * *
env:
TWILIO_ACCOUNT_SID: ${{ secrets.TWILIO_ACCOUNT_SID }}
TWILIO_API_KEY: ${{ secrets.TWILIO_API_KEY }}
TWILIO_API_SECRET: ${{ secrets.TWILIO_API_SECRET }}
permissions:
contents: read
jobs:
send:
runs-on: ubuntu-latest
steps:
- name: 'Sending SMS Notification'
uses: twilio-labs/actions-sms@v1
with:
fromPhoneNumber: '+12345678900' # alternatively, use a Repository Secret
toPhoneNumber: '+12345678900' # alternatively, use a Repository Secret
message: 'Hello from
β¦To begin, you will need a GitHub Actions workflow YAML. I copied mine directly from the twilio-labs/actions-sms. The Twilio team maintains the action from an open-source repo, so if you have questions or looking for other features, definitely reach out to them there.
name: PR text MSG
on: [pull_request]
jobs:
text:
runs-on: ubuntu-latest
steps:
- name: 'Sending SMS Notification'
uses: twilio-labs/actions-sms@v1
with:
fromPhoneNumber: '+1(267)8282212'
toPhoneNumber: ${{ secrets.PAGER_NUMBER }}
message: 'Hello from Twilio'
env:
TWILIO_ACCOUNT_SID: ${{ secrets.TWILIO_ACCOUNT_SID }}
TWILIO_API_KEY: ${{ secrets.TWILIO_API_KEY }}
TWILIO_API_SECRET: ${{ secrets.TWILIO_API_SECRET }}
Something to keep in mind is that you will need a Twilio trial account and create a Programmable Messaging service to generate your secret key and SID. If you are also curious about how to set up secrets in a GitHub rep, check out my previous article on The Secrets of An Authenticated GitHub Action Workflow
. You will want to put the PAGER_NUMBER in a secret too.
Finally, set sending phone numbers to the one generated in Twilio. Also, to trigger the action I have it set to pull_request, but for testing, purposes you can also set it as workflow_dispatch.
And that is it. Enjoy your new text messages.
This is part of my 28 days of Actions series. To get notified of more GitHub Action tips, follow the GitHub organization right here on Dev. Learn how to build action with Node.js
Top comments (0)