deploy 1.0.1

Manage deployments with the GitHub Deployment API


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.


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, 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.


This skill is based on and inspired by the excellent Hubot script:


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.
* @abobt deploy {branch or SHA} to {target} [for {owner}/{repo}] - Creates a GitHub deployment of branch/SHA to a deployment target.
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}.


Version History

Version Installs Created Author Release Notes
1.0.1 0 5/11/2021
Phil Haack
  • Respond with the standard help message when no arguments are supplied.
1.0.0 3 2/9/2021
Phil Haack

✨ Initial version! This allows managing deployments via the GitHub Deployment API from chat. More to come!


  • by Serious Business
  • last updated by
  • 3 total installs
  • MIT License
Log In or Create Account You need an account to install this package with Abbot. Signing in with Slack or Discord will create an account if you don't have one already.