Bot to automatically sync and update an airtable sheet with GitHub pull request and issue data.

Clone this repo:
  1. 980cace fix flags by Jess Frazelle · 5 days ago master
  2. a91276e fix flag by Jess Frazelle · 5 days ago
  3. 4560725 Bump version to v0.1.3 by Jess Frazelle · 5 weeks ago v0.1.3
  4. 81cbe84 new cli pkg by Jess Frazelle · 5 weeks ago
  5. 2bcc6fe update generated files by Jess Frazelle · 5 weeks ago

gitable

Travis CI GoDoc

Bot to automatically sync and update an Airtable sheet with GitHub pull request and issue data.

Installation

Binaries

For installation instructions from binaries please visit the Releases Page.

Via Go

$ go get github.com/jessfraz/gitable

Running with Docker

$ docker run --restart always -d \
    -v /etc/localtime:/etc/localtime:ro \
    --name gitable \
    -e "GITHUB_TOKEN=59f6asdfasdfasdf0" \
    -e "AIRTABLE_APIKEY=ksdfsdf7" \
    -e "AIRTABLE_BASEID=appzxcvewrwtrewt4" \
    -e "AIRTABLE_TABLE=Current Open GitHub Pull Request and Issues" \
    r.j3ss.co/gitable --interval 1m

Usage

$ gitable -h
gitable -  Bot to automatically sync and update an airtable sheet with GitHub pull request and issue data.

Usage: gitable <command>

Flags:

  --airtable-apikey  Airtable API Key (or env var AIRTABLE_APIKEY) (default: <none>)
  --airtable-baseid  Airtable Base ID (or env var AIRTABLE_BASEID) (default: <none>)
  --airtable-table   Airtable Table (or env var AIRTABLE_TABLE) (default: <none>)
  --autofill         autofill all pull requests and issues for a user [or orgs] to a table (defaults to current user unless --orgs is set) (default: false)
  -d, --debug        enable debug logging (default: false)
  --github-token     GitHub API token (or env var GITHUB_TOKEN)
  --interval         update interval (ex. 5ms, 10s, 1m, 3h) (default: 1m0s)
  --once             run once and exit, do not run as a daemon (default: false)
  --orgs             organizations to include (this option only applies to --autofill) (default: [])

Commands:

  version  Show the version information.

Airtable Setup

Using the API

Follow this guide.

Format

Your airtable table must have the following fields:

  • reference (single line text)
  • title (single line text)
  • type (single select)
  • state (single line text)
  • author (single line text)
  • labels (multiple select)
  • comments (number)
  • url (url)
  • updated (date, include time)
  • created (date, include time)
  • completed (date, include time)
  • project (single line text)

The only data you need to initialize (if not running with --autofill) is the Reference which is in the format {owner}/{repo}#{number}.

It should look like the following:

airtable.png