
deploy 2.0.4
an Abbot package for Microsoft Teams by Serious Business
Manage deployments with the GitHub Deployment API
About Abbot
Abbot is a programmable bot that turns your team chat into a shared command center. We handle all the boilerplate of building and running these conmmands so that you can focus on making tools that help you ship faster.
We built Abbot because we saw the power of this style of work (called ChatOps), when we worked at GitHub. ChatOps made it possible for GitHub to work productively without meetings, while globally distributed. We think it's a pretty great way to work, so we made it easy to use in Slack, Discord, and Microsoft Teams.
You can read more about Abbot here, check out our blog, or take a look at some of the other cool packages available as a one-click install from Abbot's Package Directory.
README
Manage deployments via the GitHub Deployments API. This skill provides commands for launching deployments and retrieving deployment statuses.
After installing deploy
, you will need to set up a GitHub Personal Access Token as a secret named GitHubToken
for the skill.
Prerequisite
This skill can launch deployments using the GitHub API, but is not a deployment system itself. You still need to set up a third party deployment system to handle the actual deployment. See GitHub's docs on Delivering Deployments for more details.
Getting Started
Set the default repository
Once a secret is set up, it is a good idea to set a default repository for the skill to work in. The default repository is specific to a chat room. You can always override the default by specifying the repository, but that can get tedious.
@abbot deploy repo {owner}/{repo}
For example, if you have a repository at the URL https://github.com/haacked/Encourage, you'd run:
@abbot deploy repo haacked/Encourage
Set deployment targets
The next step is save some deployment targets. These are the environments that your deployment system understands such as prod
, stage
, whatever.
@abbot deploy status add target stage
Finally deploy something
@abbot deploy main to stage
Run @abbot help deploy
to see the full list of command and which commands can retrieve deployment statuses.
Credits
This skill is based on and inspired by the excellent Hubot script: https://github.com/stephenyeargin/hubot-github-deployments.
Usage
Manage GitHub deployments to deployment targets. A deployment target is a named environment such as 'stage', 'prod', etc.
* @abbot deploy status [for {owner}/{repo}]
- List the status of most recent deployments.
* @abbot deploy repo
- Displays the default repository for this room.
* @abbot deploy repo {owner}/{repo}
- Sets the default repo for this room.
* @abbot deploy list targets
- Lists available deployment targets.
* @abbot deploy add target {target}
- Adds a deployment target.
* @abbot deploy remove target {target}
- Removes a deployment target.
* @abbot deploy {branch or SHA} to {target} [for {owner}/{repo}]
- Creates a GitHub deployment of branch/SHA to a deployment target. To force a deploy add --forced
at the very end.
Note: You can specify a default repository for a room using @abbot repo {owner}/{repo}
. that way you don't have to append each status command with for {owner}/{repo}
.
Code
Version History
Version | Created | Author | Release Notes | Installs |
---|---|---|---|---|
2.0.4 | 11/24/2021 |
![]() |
Add support for forced deploys. |
1 |
2.0.3 | 10/14/2021 |
![]() |
Updated the usage text. |
1 |
2.0.2 | 9/24/2021 |
![]() |
Fix the skill due to a breaking change introduced to Abbot. The author apologizes for the inconvenience. |
2 |
2.0.1 | 9/18/2021 |
![]() |
Fixed an issue with the room key. |
0 |
2.0.0 | 9/18/2021 |
![]() |
Saving the default repository and deployment targets is per-room. Previous versions of this skill used the room-name as a key to save these values. However, room names can change. Now it uses the room Id if available, otherwise it uses the room name. |
0 |
1.0.1 | 5/11/2024 |
![]() |
|
0 |
1.0.0 | 2/9/2024 |
![]() |
✨ Initial version! This allows managing deployments via the GitHub Deployment API from chat. More to come! |
2 |
Not using Microsoft Teams? No worries! Abbot works in Slack, Discord, and Microsoft Teams.
It's free to get started!
Details
- Last updated
- Installs
- 6 total installs
- Language
- CSharp
- License
- MIT License