Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Automatically submit winget packages when we release a new version #14795

Closed
zadjii-msft opened this issue Feb 6, 2023 · 3 comments · Fixed by #14965
Closed

Automatically submit winget packages when we release a new version #14795

zadjii-msft opened this issue Feb 6, 2023 · 3 comments · Fixed by #14965
Labels
Area-Build Issues pertaining to the build system, CI, infrastructure, meta In-PR This issue has a related PR Issue-Task It's a feature request, but it doesn't really need a major design. Needs-Tag-Fix Doesn't match tag requirements Product-Meta The product is the management of the products.

Comments

@zadjii-msft
Copy link
Member

We don't currently. We should.

PowerToys has this handy script for automating their release to winget. We could probably copypasta with minimal changes.

https://github.com/microsoft/PowerToys/blob/main/.github/workflows/package-submissions.yml

@zadjii-msft zadjii-msft added Area-Build Issues pertaining to the build system, CI, infrastructure, meta Product-Meta The product is the management of the products. Issue-Task It's a feature request, but it doesn't really need a major design. labels Feb 6, 2023
@zadjii-msft zadjii-msft added this to the Terminal v1.18 milestone Feb 6, 2023
@microsoft-github-policy-service microsoft-github-policy-service bot added the Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting label Feb 6, 2023
@DHowett
Copy link
Member

DHowett commented Feb 6, 2023

FWIW I haven't done this yet because we do post-release-build vetting and release on a schedule, rather than "every time the release pipeline builds."

That is: We build the final releases on Thursdays or Fridays (as if 🤣) and then publish them the following Tuesday.

WinGet requires a durable public asset URL, which for us would be GitHub.

We may prefer to automate this off the tail end of a GitHub Action that fires when a release is published...

@zadjii-msft
Copy link
Member Author

You know, that's right, the script above might actually just work based off a GH action on publishing the release. It's been so long since I opened that tab, I had forgotten. I'll clarify.

@zadjii-msft zadjii-msft changed the title Automatically submit winget packages from the release pipeline Automatically submit winget packages when we release a new version Feb 6, 2023
@carlos-zamora carlos-zamora removed the Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting label Feb 8, 2023
@microsoft-github-policy-service microsoft-github-policy-service bot added the In-PR This issue has a related PR label Mar 8, 2023
@sitiom
Copy link
Contributor

sitiom commented Mar 8, 2023

This can be done via Winget Releaser. I have opened up a PR:

DHowett pushed a commit that referenced this issue Mar 17, 2023
[The winget-releaser action] automatically generates manifests for the
[Winget Community Repository] and submits them.

I suggest adding Dependabot to keep the action up to date. There were
many cases where the action was failing due to an outdated version.

Closes #14795

[The winget-releaser action]:
https://github.com/vedantmgoyal2009/winget-releaser
[Winget Community Repository]: https://github.com/microsoft/winget-pkgs
@microsoft-github-policy-service microsoft-github-policy-service bot added the Needs-Tag-Fix Doesn't match tag requirements label Mar 17, 2023
DHowett pushed a commit that referenced this issue May 29, 2023
[The winget-releaser action] automatically generates manifests for the
[Winget Community Repository] and submits them.

I suggest adding Dependabot to keep the action up to date. There were
many cases where the action was failing due to an outdated version.

Closes #14795

[The winget-releaser action]:
https://github.com/vedantmgoyal2009/winget-releaser
[Winget Community Repository]: https://github.com/microsoft/winget-pkgs

(cherry picked from commit bee22f3)

winget: use the correct fork-user

(cherry picked from commit e1079d8)

winget.yml: switch to manually using wingetcreate (#15023)

It was brought to my attention that we should be more restrictive in
which tasks we ovver a GitHub token to. Sorry!

With thanks to sitiom for the version parsing and the magic GitHub
action syntax incantation for determining what is a prerelease.

(cherry picked from commit 5a34d92)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-Build Issues pertaining to the build system, CI, infrastructure, meta In-PR This issue has a related PR Issue-Task It's a feature request, but it doesn't really need a major design. Needs-Tag-Fix Doesn't match tag requirements Product-Meta The product is the management of the products.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants