sourcegraph / sourcegraph-public-snapshot

Code AI platform with Code Search & Cody
https://sourcegraph.com
Other
10.1k stars 1.27k forks source link

5.0.5 patch release tracking issue #52745

Closed keegancsmith closed 1 year ago

keegancsmith commented 1 year ago

5.0.5 patch release

This release is scheduled for May 31, 2023, 5:00 PM (UTC).

Attention developers: to get your commits in main included in this patch release, please file a patch request for review.

Only check off items if relevant commits across the following repositories have been cherry-picked into the relevant 5.0 branch by the release captain:

  • sourcegraph/sourcegraph
  • sourcegraph/deploy-sourcegraph
  • sourcegraph/deploy-sourcegraph-docker

Setup

pnpm run release release:activate-release

Prepare release

Ensure that all patch request issues are accounted for, and have all relevant commits across relevant repositories listed above in the checklist.

For each of the following repositories you have made changes to, cherry-pick (see snippet below) and check off commits listed above.

git checkout 5.0
git pull
git cherry-pick <commit0> <commit1> ... # all relevant commits from the default branch
git push origin 5.0

Create and test the first release candidate:

Note: Ensure that you've pulled both main and release branches before running this command.

Note: You will need to re-check the above pipelines for any subsequent release candidates. You can see the Buildkite logs by tweaking the "branch" query parameter in the URLs to point to the desired release candidate. In general, the URL scheme looks like the following (replacing N in the URL):

Stage release

Finalize release

Post-release

  pnpm run release release:close

Note: If another patch release is requested after the release, ask that a patch request issue be filled out and approved first.

github-actions[bot] commented 1 year ago

Hey, @sourcegraph/batchers (@eseliger @courier-new @adeola-ak @BolajiOlajide @Piszmog @st0nebraker @malomarrec @chrispine @danielmarquespt) - we have been mentioned. Let's take a look.

keegancsmith commented 1 year ago

The deploy-sourcegraph* repos have no commits since 5.0.4 except for helm which had 3cce4d261ca8201e8491d7ecdea949a660dafe04 which was already included in a hotfix only for helm (5.0.4-rev.1)

keegancsmith commented 1 year ago

Here are the commits in the sourcegraph repo since 5.0.4:

$ git log --oneline v5.0.4..origin/5.0
8efe59f1c4 (origin/5.0) [Backport 5.0] Remove debug print statement (#52727)
a1f6e1f88d [Backport 5.0] Bump syntax-highlighter docker container for single-docker deployment (#52712)
86b00e996c [Backport 5.0] gitserver: use cat-file for reading blobs containing .. (#52688)
a74f104a1a [Backport 5.0] Make endpoint configurable for OpenAI completions client (#52601)
76ab4b8bd3 batches: add docs for new org admin setting (#52676) (#52679)
7da051fc56 [Backport 5.0] batches: add organization setting to enable all members of org to become batch changes admins (#52655)
f64adefa58 remove 'unreleased' text from 5.0.4 changelog entry (#52678)
8ae3a9887f [Backport 5.0] batches: add settings for org level batch changes admin (#52656)
00d83fe795 [Backport-5.0] [fix] fixes for mau calculations in product analytics (#52581) (#52682)
636872c1e6 [Backport 5.0] [fix] makeDateTrunc calculating rolling_month wrong (#52579) (#52607)
15c63593e0 [Backport 5.0] [fix] use same where condition in user analytics as in pings for mau (#52608)
4d3099bfe2 [Backport 5.0] bext: ignore non-code diff content hovers on Bitbucket (#52613)
d7bb5a1aea Backport Implement features in LLM Proxy layer to 5.0 (#52531)
bbd7837886 Backport 52299 to 5.0 (#52302)
d2eac1e79d [Backport 5.0] (feat) add ability to allow anonymous usage mode based on "auth.publi… (#52506)

The all have titles except the one which just says 52299, that PR was had this title:

[fix] switch id column of user_repo_permissions table to bigint (#52299)
keegancsmith commented 1 year ago

I'm pretty much ready to promote the tag to final. It isn't clear in the instructions, but I assume I need security to be happy first so will do it once https://github.com/sourcegraph/sourcegraph/issues/52746 is closed.

keegancsmith commented 1 year ago

Sourcegraph 5.0.5 has been published

@keegancsmith: Please complete the post-release steps before closing this issue.

keegancsmith commented 1 year ago

Here are some notes I took while doing the release:

Useful links

Sourcegraph release tool documentation at https://handbook.sourcegraph.com/departments/engineering/dev/tools/release/

I checked PRs with the backported-to-5.0 label. https://github.com/sourcegraph/sourcegraph/pulls?q=is%3Apr+is%3Aopen+label%3Abackported-to-5.0

I checked PRs open against the 5.0 branch with the search query base:5.0. https://github.com/sourcegraph/sourcegraph/pulls?q=is%3Apr+is%3Aopen+base%3A5.0

release-blocker https://github.com/sourcegraph/sourcegraph/labels/release-blocker

Journal

This updated the release config file, which I then sent out a PR for. It asked me when the release is and who I am. I double checked the changes to the file. I believe I could of run this step before branch cut, avoiding the need to wait for this to land in main.

pnpm run release release:activate-release

I realised afterward that tracking:issues is likely what I should of run first. But I was able to run this command before landing the other PR by switching back to main and running

git checkout k/release -- dev/release/release-config.jsonc
pnpm run release tracking:issues

Ran into an issue where I put in an expired token and it kept trying to use it. Fixed that with

rm dev/release/.secrets/github.txt

I then followed the release issue template from there.

First I inspected commits since 5.0.4 on each repos release branch using a command like:

git log --oneline v5.0.4..origin/5.0

Posted comments on the issue since it seemed useful those summaries.

Stampers are sleeping so my update config PR still hasn't landed. Luckily I still managed to run this with the release config changes just staged on main.

pnpm run release release:create-candidate

That command tried to run git log origin/5.0...5.0 but I don't have 5.0 checked out locally. This failed, I am guessing it was checking for changes? I just created the branch.

Creating the CHANGELOG was a bit of toil, but atleast it made me look at each commit. I think in future when we know we have a scheduled patch release we should have an unreleased section for it + when landing backport PRs we should ensure the CHANGELOG looks good.

I'm unsure if the tagged release we want needs to include the final changelog on the 5.0 branch. I am going to assume no from past experience, but this may have changed. Either way I will ensure the final 5.0 CHANGELOG ends up on the 5.0 branch via a manual commit.

Issue template todos