0.6.0 • Published 2 years ago

commentary-cli v0.6.0

Weekly downloads
-
License
ISC
Repository
github
Last release
2 years ago

Commentary - Update a github comment

This is a small demo that will either create a new or update an existing comment on a pull request in GitHub.

I got the idea from Ben Limmer, but I did it in Go.

This seemed like a good way to test how fast the various methods of running github actions would be.

So writing GitHub actions in Go, I'm aware of 4 possibilities: 1. just shell out and go run main.go 2. package the Go using npm or like this (private or public npm registry as you please) 3. package your Go as a docker container (private or public registry) 4. attach pre-built Go artifacts to a github release and run those using js wrappers

I have started to add all these to this repository to see how they perform.

Running as a GitHub Action

There are several environment variables that this needs.

  • COMMENTARY_ACTION_TYPE - you can have multiple actions all racing without stepping on each other
  • GITHUB_TOKEN - This should be a secret, but is the personal access token of the service account (or your real github account)
  • GITHUB_REPOSITORY - Set by GitHub as an owner/repo
  • GITHUB_REPOSITORY_OWNER - Set by GitHub as owner
  • GITHUB_BASE_REF - Set by GitHub as main
  • GITHUB_HEAD_REF - Set by Github to be the branch name, e.g. mybranch
  • GITHUB_REF_NAME - Set by Github, for example, 1/merge
  • GITHUB_SHA - Set by GitHub as the commit sha1, and used to look up the PR.

Mage

Instead of make and Makefile, I used mage and made a magefile.

If you do brew install mage then you can run here:

  • mage -v run - will run the webserver by doing go run main.go
  • mage generate - will re-generate the genqlient code by doing go generate ./...
  • mage install - will build and install the commentary application binary
  • mage release - will generate a new release

Or just run the go commands by hand.