Skip to content

fix: use template-based winget submit for jtk releases#89

Merged
rianjs merged 2 commits into
mainfrom
fix/88-jtk-winget-binary-name
Feb 7, 2026
Merged

fix: use template-based winget submit for jtk releases#89
rianjs merged 2 commits into
mainfrom
fix/88-jtk-winget-binary-name

Conversation

@rianjs

@rianjs rianjs commented Feb 7, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Replaces wingetcreate update --submit with a template-based approach using wingetcreate submit for jtk winget releases
  • The old approach fetched the published manifest from microsoft/winget-pkgs, which still expects jira-ticket-cli.exe — but the zip now contains jtk.exe, causing "Nested installer not found" errors
  • Uses distinct checksum placeholders (CHECKSUM_AMD64_PLACEHOLDER, CHECKSUM_ARM64_PLACEHOLDER) in the installer template to avoid PowerShell -replace ordering ambiguity
  • Updates winget README with correct binary names, URL patterns, and template placeholder docs

Test plan

  • Review the PowerShell placeholder substitution logic in the workflow
  • After merge, trigger a jtk release (next fix: or feat: commit touching Go code) and verify the winget job passes
  • Verify a PR is created on microsoft/winget-pkgs with correct manifest content

Closes #88

wingetcreate update fetches the published manifest from microsoft/winget-pkgs,
which still has RelativeFilePath: jira-ticket-cli.exe from before the rename.
The zip now contains jtk.exe, causing "Nested installer not found" errors.

Switch to a template-based approach: copy local manifest templates, substitute
version/checksum placeholders, and use wingetcreate submit. This bypasses
the auto-detection entirely and gives full control over manifest content.

Also updates installer template to use distinct checksum placeholders
(CHECKSUM_AMD64_PLACEHOLDER, CHECKSUM_ARM64_PLACEHOLDER) to avoid
PowerShell -replace ordering ambiguity, and updates README with correct
binary names and URL patterns.
The test-winget CI was using [regex]::Replace with 0{64} pattern to
substitute checksums one at a time. Now that the jtk installer template
uses distinct named placeholders (CHECKSUM_AMD64_PLACEHOLDER,
CHECKSUM_ARM64_PLACEHOLDER), update the test to match.
@rianjs rianjs merged commit b8ec930 into main Feb 7, 2026
9 checks passed
@rianjs rianjs deleted the fix/88-jtk-winget-binary-name branch February 7, 2026 13:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix: jtk winget release fails — binary renamed from jira-ticket-cli.exe to jtk.exe

1 participant