-
Notifications
You must be signed in to change notification settings - Fork 1
feat(ci): Add automated Winget publishing to release workflow #39
Copy link
Copy link
Closed
Description
Summary
Extend the release workflow to automatically submit PRs to microsoft/winget-pkgs, plus add validation and manual retry workflows.
Changes
- Add
wingetjob to.github/workflows/release.yml - Create
.github/workflows/winget-publish.ymlfor manual publishing - Create
.github/workflows/test-winget.ymlfor manifest validation on PRs - Document
WINGET_GITHUB_TOKENsecret requirement
Workflow logic
- Wait for goreleaser job to complete
- Download wingetcreate tool
- Check if manifest already exists in microsoft/winget-pkgs
- If exists: use
wingetcreate updatecommand - If new: process templates and use
wingetcreate submit - Use .NET regex for sequential checksum replacement (PowerShell
-replacedoesn't support count parameter)
Files to modify/create
.github/workflows/release.yml(add winget job).github/workflows/winget-publish.yml(new).github/workflows/test-winget.yml(new)
Required secrets
| Secret | How to Obtain |
|---|---|
WINGET_GITHUB_TOKEN |
GitHub PAT with public_repo scope |
Acceptance criteria
- Release workflow includes Winget publishing job
- Test workflow validates manifests on PRs touching
packaging/winget/** - Manual workflow allows re-publishing specific versions
- PR successfully created on microsoft/winget-pkgs
Dependencies
- Depends on feat(build): Add Windows amd64 and arm64 builds to GoReleaser #35 (Windows builds)
- Depends on feat(packaging): Add Winget manifest templates #38 (Winget manifest templates)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels