gomods / athens

A Go module datastore and proxy
https://docs.gomods.io
MIT License
4.38k stars 492 forks source link

docs: cutting a release #567

Open ghost opened 5 years ago

ghost commented 5 years ago

continuing the discussion from: https://github.com/gomods/athens/pull/547#discussion_r212680314

We need to outline the steps required for a maintainer to cut a new release of either the proxy or Olympus.

ghost commented 5 years ago

Here are some thoughts from slack, after we added auto generation of binaries with GoReleaser.

... I also saw it supports using a custom release notes markdown file. I wonder if we should do releases as a PR, this would just be a release notes file and new tag. That way we can control the notes contents. As it is if we allow the automatic generation it will just build a log from commit messages. Or we can enable draft for releases and they will be added as such, not immediately released. This would allow editing of the release after generation. ...

I am leaning towards the draft option, this will auto populate the release and save it as a draft on GH. Allowing maintainers to work on the notes as needed before publishing the release.

ghost commented 5 years ago

I have a PR open to use the draft option, #621

michalpristas commented 5 years ago

👍 for draft

michalpristas commented 5 years ago

also can we close this as #621 is in?

ghost commented 5 years ago

I think it should stay open, the doc would be a general outline of how to increment tags and when. What to include and how to format the changelog. As well with the draft feature, a maintainer would push a tag first to generate the binaries and draft. Then edit the release doc. Maybe releases require two maintainers? One to approve.

ghost commented 5 years ago

I could incorporate it into #570