Repository navigation
feat: winget package manifests and submit script (spec 152) - #170
Merged
Merged
Conversation
Generates the version, defaultLocale and installer manifests for InterSystemsCommunity.IrisAgenticDev as a portable x64 package, checked against the official 1.10.0 schemas. scripts/winget-submit.sh verifies the release asset against SHA256SUMS and opens the winget-pkgs PR only with --submit; no winget token is stored. CI job winget-install installs the latest release with real winget on windows-latest and checks a wrong hash is refused. Refs #102
The first run installed and ran 1.7.1, then winget uninstall stopped on the msstore source agreements. The runner image already has winget 1.11.510, so the comment on the fallback install step now says so.
pwsh ends a script with the last native exit code, which here is the wrong-hash install winget is meant to refuse.
They are copies of microsoft/winget-cli's files and stay byte-identical, so an update is a plain copy.
isc-tdyar
approved these changes
Nov 2, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Spec 152, for #102: a winget package for the Windows binary.
What changed
packaging/winget/winget_manifests.pywrites the three manifestsmicrosoft/winget-pkgsexpects forInterSystemsCommunity.IrisAgenticDev. The package uses theportabletype: winget downloads the existingiris-agentic-dev-windows-x86_64.exe(system DLLs only, no runtime to bundle), checks its hash and putsiris-agentic-devon PATH.scripts/winget-submit.sh <version>downloads the release, checks the.exeagainstSHA256SUMSand generates the manifests. Only with--submitdoes it open thewinget-pkgspull request from the maintainer's fork. It reads no token; it uses the local gh login.winget-installonwindows-latest: installs winget 1.29.380 from Microsoft's release (hash-checked; Server images ship without it), then validates, installs, runs and uninstalls the latest published release from the generated manifests, and checks that a wrong-hash manifest is refused.tests/e2e/test_winget_manifests.py: 25 tests, including validation against the official 1.10.0 schemas (vendored, MIT).jsonschemaand its five dependencies are added, hash-pinned, to.github/requirements/test.txtso CI runs them instead of skipping.releaseapprovals per run, and the asset list (nine files, not six).No stored token
The usual automation (
winget-releaser,wingetcreate,komac) needs a classic PAT withpublic_repo. On the maintainer account, that token could push to this repository and bypass its rulesets. Until a dedicated bot account exists, each release is submitted by hand with the script.What to look at
winget-installjob. This PR is its first run, and the winget install step on the runner is the part most likely to need a fix.scripts/winget-submit.sh: every remote write sits inside the--submitblock.