Automate releases and more with the new Sentry Release GitHub Action

Image of Alexander Hermann

This is a guest post by Rahul Chhabria, Director of Product Marketing at Sentry.

At Sentry, we believe that code is the center of every experience and when code works, customers are happy. For consumers today, there’s not just one app for that—there are multiple. Given this, consumers choose applications not solely for product or service, but also for experience.

That’s why companies like GitHub use Sentry. They see application monitoring for what it is: not just another neat tool, but a meaningful competitive advantage.

Maintaining the advantage

Remember that time you spent hours chasing a heisenbug? If you’d only known which commit caused the error, you could have fixed the problem without the throbbing headache. Sentry’s new (and official) GitHub Action is the pain relief you’ve been looking for. It automates all the heavy lifting when deploying changes to production.

The Sentry Release GitHub Action will

  • Notify Sentry of new releases
  • Enable Sentry’s Suspect Commits feature
  • Automatically upload source maps to Sentry (JavaScript developers, you know you love this)
  • Send email notifications when code is deployed

Screenshot of Sentry Release GitHub Action

If/when something breaks after the deploy, Sentry will tell you which commit caused the error and the developer that can help fix it. (Sidenote: We should probably strike “heisenbug” from our vocabulary, nothing escapes Sentry.)

Screenshot showing suspect commits

Get started

Modify and add the following block to your workflow:

- name: Create Sentry release
  uses: getsentry/action-release@v1.0.0
  env:
    SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
    SENTRY_ORG: ${{ secrets.SENTRY_ORG }}
    SENTRY_PROJECT: ${{ secrets.SENTRY_PROJECT }}
  with:
    environment: production

The robots will create a new Sentry release and tell Sentry that you are deploying to the production environment.

A whole new world with GitHub + Sentry

In case you made it this far and are scratching your head saying, “What is Sentry?”, feel free to take a look at this throwback or keep reading for a fresh take.

Let’s look at what happens to teams who don’t use an application monitoring platform like Sentry. In this scenario, a simple 500 error falls between four people the same way a simple pop fly falls between four baseball players — each expecting another to catch it:

Diagram showing a simple 500 error falls between four people

With GitHub and Sentry, your response process to customer issues looks like this:

Diagram showing Sentry in action

  • Sentry catches exceptions/errors in production code
  • Sentry surfaces stack traces and the exact commit that caused the error
  • The right developers fix the broken code in GitHub while following the team’s review processes
  • Kick off any automated tests before — finally — scheduling a release
  • Sentry Release GitHub Action uploads source maps, configures suspect commits and notifies Sentry of the new release
  • Bask in the success of happy customers and freed up dev cycles

Sign up for Sentry or grab the latest version of the action here. Move fast, break things, fix fast, fastly, quickly. You get the point.

Stack symbiosis

The engineering teams at GitHub and Sentry use GitHub and Sentry to build our respective products. This is how we build our software. Together, we want to help you write better code, manage chaos, and keep customers happy.