Skip to content
This repository was archived by the owner on Aug 1, 2025. It is now read-only.

Commit 1bfc763

Browse files
[Backport M106] chore: Add CLI workflow for Cody release captains (#8091)
Creates an interactive script to guide release captains through the complete Cody release process. Note: This is just an initial PR. I might have more PRs to improve the script later. ## Test plan ./release/release-captain.sh ![Screenshot 2025-06-18 at 6 09 53 PM](https://github.com/user-attachments/assets/bfb55b35-7a1c-442d-b20f-1510e3764849) <br> Backport 3407254 from #8078 Co-authored-by: julialeex <julia.xu@sourcegraph.com>
1 parent 284b3ef commit 1bfc763

File tree

2 files changed

+472
-0
lines changed

2 files changed

+472
-0
lines changed

release/README.md

Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,106 @@
1+
# Cody Release Captain CLI
2+
3+
This directory contains automation scripts for Cody release captains.
4+
5+
## release-captain.sh
6+
7+
An interactive CLI workflow that follows the [Release Captain Playbook](https://www.notion.so/sourcegraph/Release-Captain-Playbook-13ba8e112658800d877ce7b4e8413935) and guides release captains through the complete Cody release process.
8+
9+
### Prerequisites
10+
11+
- Git CLI
12+
- GitHub CLI (`gh`)
13+
- `jq` for JSON processing
14+
- Write access to the Cody repository
15+
- JetBrains account with admin access (for JetBrains releases)
16+
- `GITHUB_TOKEN` environment variable set
17+
18+
### Usage
19+
20+
```bash
21+
./release/release-captain.sh
22+
```
23+
24+
The script provides an interactive menu with these options:
25+
26+
1. **Day 1: Create release branch** - Creates release branch, backport labels, and prerelease builds
27+
2. **Day 2-6: Stabilize release branch** - Helps create new prerelease builds after backports
28+
3. **Day 7: Ship stable release** - Guides through stable release process for VSCode, JetBrains, and Agent
29+
4. **Emergency patch release** - Creates emergency patch releases when needed
30+
5. **Check prerequisites** - Validates required tools and permissions
31+
32+
### Environment Variables
33+
34+
- `MILESTONE` - The milestone number (e.g., 66). If not set, the script will prompt for it.
35+
36+
### Example
37+
38+
```bash
39+
# Set milestone and run
40+
export MILESTONE=66
41+
./release/release-captain.sh
42+
```
43+
44+
### Manual Steps Still Required
45+
46+
The script automates most tasks but still requires manual steps for:
47+
48+
- Reviewing and organizing generated changelogs
49+
- JetBrains Marketplace management (unhiding releases, writing release notes)
50+
- Community notifications and QA coordination
51+
- Monitoring workflow statuses
52+
- Final release verification
53+
54+
### Copy-Paste Templates
55+
56+
#### 1. Notify #team-cody-core (Day 1)
57+
58+
```text
59+
Hey team! 👋 I'm the release captain for milestone {MILESTONE}.
60+
61+
We've branched from commit {COMMIT_HASH} for M{MILESTONE}, which will produce:
62+
- VSCode v1.{MILESTONE}.0
63+
- JetBrains v7.{MILESTONE}.0
64+
65+
**For ship-blocking fixes**: Add the `backport M{MILESTONE}` label to your PRs.
66+
67+
**Prerelease versions for dogfooding**:
68+
- VSCode Insiders: v1.{MILESTONE_MINUS_ONE}.{BUILD}
69+
- JetBrains Nightly: v7.{MILESTONE_MINUS_ONE}.0-nightly
70+
71+
Please update your extensions and help us test! 🧪
72+
73+
Next opportunity to reach stable: land code by {NEXT_BRANCH_DATE}, ships {NEXT_RELEASE_DATE}.
74+
```
75+
76+
#### 2. Request QA (#ext-qa-fibilabs-sourcegraph)
77+
78+
```text
79+
Hi QA team! 👋
80+
81+
New prerelease builds are ready for testing:
82+
- **JetBrains**: v7.{MILESTONE_MINUS_ONE}.0-nightly
83+
- **VSCode Insiders**: v1.{MILESTONE_MINUS_ONE}.{BUILD}
84+
85+
Please QA these versions and report any issues. Thanks! 🙏
86+
```
87+
88+
#### 3. Introduce to Community Support (#discuss-community-support)
89+
90+
```text
91+
Hi community support team! 👋
92+
93+
I'm the release captain for Cody milestone {MILESTONE}.
94+
95+
**Current prerelease versions**:
96+
- VSCode Insiders: v1.{MILESTONE_MINUS_ONE}.{BUILD}
97+
- JetBrains Nightly: v7.{MILESTONE_MINUS_ONE}.0-nightly
98+
99+
Please flag any issues you see with these versions - especially helpful since prerelease has fewer users. Thanks for the partnership! 🤝
100+
```
101+
102+
### Related Documentation
103+
104+
- Main release guide: See the comprehensive release captain guide in the codebase
105+
- [Agent release guide](../agent/README.md#updating-the-polly-http-recordings)
106+
- [Cody Web publishing guide](../web/publish.md)

0 commit comments

Comments
 (0)