commentary-cli
v0.6.0
Published
This is a small demo that will either create a new comment or update an existing comment on a pull request in GitHub.
Downloads
3
Readme
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:
- just shell out and
go run main.go
- package the Go using npm or like this (private or public npm registry as you please)
- package your Go as a docker container (private or public registry)
- 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 otherGITHUB_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 anowner/repo
GITHUB_REPOSITORY_OWNER
- Set by GitHub asowner
GITHUB_BASE_REF
- Set by GitHub asmain
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 doinggo run main.go
mage generate
- will re-generate the genqlient code by doinggo generate ./...
mage install
- will build and install the commentary application binarymage release
- will generate a new release
Or just run the go commands by hand.