You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on May 5, 2024. It is now read-only.
Copy file name to clipboardExpand all lines: packages/keybase-notifications/README.md
+64-74
Original file line number
Diff line number
Diff line change
@@ -1,14 +1,14 @@
1
-
# Keybase Chat Notifications
1
+
# Keybase Build Notifications
2
2
3
-
This action allows you to post messages to [Keybase Chat](https://keybase.io/blog/keybase-chat) channels, teams, and DMs. It sends messages using a Keybase paperkey and the corresponding Keybase username.
3
+
This action allows you to post GitHub build notifications to [Keybase Chat](https://keybase.io/blog/keybase-chat) channels, teams, and DMs. It sends messages via the [opensentinel API](https://keybase.io/sentinelbot), using your `owner` and `token` values.
@@ -18,112 +18,102 @@ This action allows you to post messages to [Keybase Chat](https://keybase.io/blo
18
18
19
19
## Using the Action
20
20
21
-
You will need a Keybase paperkey and its corresponding username. It is probably a good idea to create a dedicated Keybase account for this purpose, or at the very least generate a dedicated paperkey on your existing account. This makes it easier to revoke if needed.
21
+
You will need an opensentinel API token in order to use this action. Go through the [@sentinelbot](https://keybase.io/sentinelbot) setup flow for a **Generic Webhook** and make a note of the `owner` and `token` values in the URL you receive.
22
22
23
-
### Pull Request Notifications Example
23
+
As a reference, `@sentinelbot` Webhook URLs for Keybase will look something like:
This will send you a Keybase chat notification whenever a CI build fails but not when it passes (if you wanted to reduce channel noise). The `if: always()` stanza above ensures that the notification step [runs no matter what](https://help.github.com/en/actions/automating-your-workflow-with-github-actions/contexts-and-expression-syntax-for-github-actions#job-status-check-functions).
| `opensentinel_owner`\*\* | URL querystring value for owner | `null` |
96
+
| `opensentinel_token`\*\* | URL querystring value for token | `null` |
97
+
| `job_status`\*\* | GitHub Actions job status - use `${{ job.status }}` | `null` |
98
+
| `job_name` | Display name to use in the chat message | Workflow name |
99
+
| `on_success` | When a build passes, notify you "always" or "never"? | `always` |
100
+
| `on_failure` | When a build fails, notify you "always" or "never"? | `always` |
87
101
88
102
### Notes:
89
103
90
104
- Parameters denoted with `**` are required.
91
-
- `keybase_team_name`and `keybase_topic_name` are required for messaging within team chat rooms.
92
-
- `keybase_channel`is required for peer-to-peer messages.
93
105
94
-
## Supported GitHub Events
106
+
## What about other GitHub events?
95
107
96
-
The following events are supported in this action. Everything else gets silently ignored. Have a read through the [Events that trigger workflows](https://help.github.com/en/articles/events-that-trigger-workflows) document for more information on how this works.
108
+
Due to the way the permission system around GitHub Actions works, repo secrets cannot be accessed by users on forks & such. In general, an Action that requires a secret will fail when invoked through a pull request from a fork.
97
109
98
-
```yaml
99
-
on:
100
-
watch: # when someone stars a repository
101
-
types:
102
-
- "started"
103
-
push: # when someone pushes to a repository branch
104
-
pull_request:
105
-
types:
106
-
- "opened"
107
-
- "closed"
108
-
- "reopened"
109
-
- "synchronize"
110
-
commit_comment:
111
-
issues:
112
-
types:
113
-
- "opened"
114
-
- "edited"
115
-
- "closed"
116
-
- "reopened"
117
-
issue_comment:
118
-
types:
119
-
- "created"
120
-
- "edited"
121
-
- "deleted"
122
-
```
110
+
This action will do its hardest to **NOT fail the build** as a result of a processing error (network/permissions/etc).
111
+
112
+
If you're still interested in receiving Keybase notifications for other GitHub events (`push`, `pull_request`, etc), set up a **GitHub Notification** webhook with [opensentinel](https://keybase.io/sentinelbot) and add that to your repository. The webhook system is not bound by the permission issues mentioned here!
123
113
124
114
## Filtering Notifications
125
115
126
-
You can cut down on chat noise by applying filters to events that trigger this action. For example, you can send a Keybase chat notification only when someone pushes to the `master` branch.
116
+
You can cut down on chat noise by applying filters to events that trigger this action. For example, you can send a Keybase build notification only when someone pushes to the `master` branch.
127
117
128
118
```yaml
129
119
on:
@@ -144,7 +134,7 @@ Every commit that lands on master for this project triggers an automatic build a
144
134
145
135
## How to get help
146
136
147
-
The main [README](https://github.com/marvinpinto/actions/blob/master/README.md) for this project has a bunch of information related to debugging & submitting issues. If you're still stuck, try and get a hold of me on [keybase](https://keybase.io/marvinpinto) and I will do my best to help you out.
137
+
The main [README](https://github.com/marvinpinto/actions/blob/master/README.md) for this project has a bunch of information related to debugging & submitting issues. [Opensentinel](https://keybase.io/sentinelbot) help is available in the [opensentinel.users](https://keybase.io/team/opensentinel.users) user group. If you're still stuck, try and get a hold of me on [keybase](https://keybase.io/marvinpinto) and I will do my best to help you out.
0 commit comments