Skip to content

Commit 48f9d5f

Browse files
ptrthomasclaude
andcommitted
Add manifest update steps to CONTRIBUTING.md
Document the post-release workflow for updating karate-sh/manifest.json, which was previously an undocumented manual step. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 92e8956 commit 48f9d5f

1 file changed

Lines changed: 38 additions & 15 deletions

File tree

CONTRIBUTING.md

Lines changed: 38 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -108,9 +108,44 @@ The release workflow triggers automatically on tag push.
108108

109109
### After Release
110110

111-
- Binaries appear at: `https://github.com/karatelabs/karate-cli/releases/tag/v0.2.0`
112-
- GitHub auto-generates release notes from commits
113-
- Edit release notes manually if needed
111+
1. **Verify the GitHub Release**
112+
- Binaries appear at: `https://github.com/karatelabs/karate-cli/releases/tag/v0.2.0`
113+
- GitHub auto-generates release notes from commits
114+
- Edit release notes manually if needed
115+
116+
2. **Update the manifest at karate.sh**
117+
118+
The CLI uses `https://karate.sh/manifest.json` to resolve downloads. After every release, update the manifest in the [`karate-sh`](https://github.com/karatelabs/karate-sh) repo:
119+
120+
```bash
121+
cd /path/to/karate-sh
122+
123+
# Download all .sha256 files from the release
124+
gh release download v0.2.0 -R karatelabs/karate-cli -p '*.sha256'
125+
```
126+
127+
Then edit `public/manifest.json`:
128+
- Add a new version entry under `artifacts.karate-cli.versions`
129+
- Move `"stable"` from the old version's `channels` to the new one (old version gets `[]`)
130+
- Update `channel_defaults.stable.karate-cli` to the new version
131+
- Use the SHA256 values from the downloaded checksum files
132+
133+
```bash
134+
# Commit and push (Netlify auto-deploys)
135+
git add public/manifest.json
136+
git commit -m "add karate-cli v0.2.0 to manifest"
137+
git push
138+
```
139+
140+
3. **Test the install scripts**
141+
142+
```bash
143+
# macOS/Linux
144+
curl -fsSL https://karate.sh | sh
145+
146+
# Windows PowerShell
147+
irm https://karate.sh/install.ps1 | iex
148+
```
114149

115150
### Deleting a Tag (if needed)
116151

@@ -127,18 +162,6 @@ git tag -d v0.2.0 && git push origin --delete v0.2.0
127162

128163
Note: Deleting a tag does NOT delete the GitHub Release. Delete the release manually from the GitHub UI if needed.
129164

130-
## Testing the Install Scripts
131-
132-
After a release, test the installers:
133-
134-
```bash
135-
# macOS/Linux
136-
curl -fsSL https://karate.sh | sh
137-
138-
# Windows PowerShell
139-
irm https://karate.sh/install.ps1 | iex
140-
```
141-
142165
## Important Notes
143166

144167
- **Never delete `~/.karate`** - Contains license files (`uuid.txt`, `karate.lic`)

0 commit comments

Comments
 (0)