Fix Store submission re-publishing stale packages - #146
Merged
Merged
Conversation
The store-submit job passed a directory (msix-packages) to msstore publish -i, but --inputFile expects a single .msix/.msixupload file. With no valid input file, the CLI cloned the previously published submission, re-publishing the stale 1.1.0.0 packages instead of the freshly built version. Bundle the downloaded architecture-specific .msix packages into a single .msixupload file and pass that file to -i so the correct version is submitted. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
michaeljolley
added a commit
that referenced
this pull request
Jul 5, 2026
…ectory PR #146's approach passed a '.msixupload' file to 'msstore publish -i', but the installed msstore CLI (v0.3.9) treats -i/--inputDirectory as a directory, so the job failed at runtime with 'Input directory does not exist.' The msstore CLI selects its publisher from the *extension* of the positional argument and uploads exactly that file (no sibling gathering, no rebuild). Build one multi-architecture .msixbundle from the prebuilt x64/arm64 .msix packages with makeappx and pass it as the positional argument, so both architectures are submitted at the correct version deterministically -- ending the stale 1.1.0.0 re-publish. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
michaeljolley
added a commit
that referenced
this pull request
Jul 5, 2026
…ectory (#147) PR #146's approach passed a '.msixupload' file to 'msstore publish -i', but the installed msstore CLI (v0.3.9) treats -i/--inputDirectory as a directory, so the job failed at runtime with 'Input directory does not exist.' The msstore CLI selects its publisher from the *extension* of the positional argument and uploads exactly that file (no sibling gathering, no rebuild). Build one multi-architecture .msixbundle from the prebuilt x64/arm64 .msix packages with makeappx and pass it as the positional argument, so both architectures are submitted at the correct version deterministically -- ending the stale 1.1.0.0 re-publish. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
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.
Problem
The
store-submitjob ran:-i/--inputFileexpects a single.msix/.msixuploadfile, butmsix-packagesis a directory. Per the msstore CLI docs, when no valid input file is supplied the CLI falls back to thepathOrUrlproject and, finding nothing to upload, clones the previously published submission.The result: every 1.2.x release silently re-published the stale 1.1.0.0 packages. In run 28480529524 the job downloaded
WeatherExtension_1.2.2.0_{x64,arm64}.msixbut committedWeatherExtension_1.1.0.0_{x64,arm64}.msix.Fix
Added a bundling step that zips the architecture-specific
.msixpackages into a singleWeatherExtension_<version>.msixuploadfile (a.msixuploadis a plain ZIP container Partner Center accepts, and it can hold multiple architectures), then passes that file to-i:Now the freshly built packages are uploaded instead of cloning the old submission.
Co-authored-by: Copilot App 223556219+Copilot@users.noreply.github.com