├── .dockerignore ├── Dockerfile ├── LICENSE └── README.md /.dockerignore: -------------------------------------------------------------------------------- 1 | .git 2 | .github 3 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM getsentry/sentry-cli:1.40.0 2 | 3 | LABEL "name"="sentry" 4 | LABEL "maintainer"="Juan Karam " 5 | LABEL "version"="1.0.0" 6 | 7 | LABEL "com.github.actions.name"="Sentry.io CLI Action" 8 | LABEL "com.github.actions.description"="Sentry.io CLI support for GitHub Actions" 9 | LABEL "com.github.actions.icon"="activity" 10 | LABEL "com.github.actions.color"="green" 11 | 12 | LABEL "repository"="http://github.com/assembleinc/github-actions/sentry" 13 | LABEL "homepage"="http://github.com/assembleinc/github-actions/sentry" 14 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | 2 | The MIT License (MIT) 3 | 4 | Copyright (c) 2018 Juan Karam, GitHub, Inc. and contributors 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in 14 | all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 22 | THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # GitHub Action for Sentry.io 2 | 3 | Action wraps the [Sentry CLI](https://docs.sentry.io/cli/) to enable Sentry release management. 4 | 5 | ## Usage 6 | 7 | An example workflow to build a docker container from source and push and release the image to an existing application on Heroku: 8 | 9 | ```hcl 10 | workflow "Create new Sentry Release Version" { 11 | on = "push" 12 | resolves = "release version" 13 | } 14 | 15 | action "release version" { 16 | uses = "juankaram/sentry@master" 17 | needs = "push" 18 | args = "releases propose-version" 19 | secrets = ["SENTRY_AUTH_TOKEN"] 20 | env = { 21 | SENTRY_ORG = "foo" 22 | SENTRY_PROJECT = "bar" 23 | } 24 | } 25 | ``` 26 | 27 | ### Secrets 28 | 29 | - `SENTRY_AUTH_TOKEN` - **Required**. The authentication token to use for all communication with Sentry. ([more info](https://docs.sentry.io/cli/configuration/)) 30 | 31 | ### Environment variables 32 | 33 | - `SENTRY_ORG` - **Optional**. The slug of the organization to use for a command. 34 | - `SENTRY_PROJECT` - **Optional**. The slug of the project to use for a command. 35 | - `SENTRY_URL` - **Optional**. The URL to use to connect to sentry. This defaults to https://sentry.io/. 36 | 37 | ## Attribution 38 | 39 | Heavily inspired by [GitHub Actions](https://github.com/actions). 40 | 41 | ## License 42 | 43 | The Dockerfile and associated scripts and documentation in this project are released under the [MIT License](LICENSE). 44 | --------------------------------------------------------------------------------