[PR #542] WIP: Automating Deploy to NuGet and Release #1085

Open
opened 2026-01-29 22:18:56 +00:00 by claunia · 0 comments
Owner

Original Pull Request: https://github.com/adamhathcock/sharpcompress/pull/542

State: closed
Merged: No


In response to #506

  • Updated Checkout Action
    • seems there have been many improvements since v1
  • Removed dotnet-setup
    • unnecessary as all the images used have the specified dotnet sdk pre-installed

GitVersion changes

string version = args.Length > 0 ? args[0] : ""; and RunTargetsAndExit(args.Skip(1).ToArray()); kinda bother me, but I wasn't sure how you would want to handle it, so I did a quick and dirty that allowed automation to run, but does require you to give it a version when specifying a target. I could just write it to a file and pull it in if the file exists if you want.

GitVersion is fairly configurable, and you can manually push/create tags to change the major/minor revisions without configuring anything.

Gihtub Releases

This is dependant on a github token being created (and stored as a secret with the name SharpCompress_Token. It needs the repo and read:org scopes (https://github.com/settings/tokens). If you add it as a secret for this repo, even if an action printed it to the logs, it should be sanitized before it was written.

I have it set to save them as drafts with the nuget and symbol package attached. This should allow you to fill in wahtever release notes you like before publishing. This can be configured.

NuGet Releases

Similar to GitHub Releases, you need a secret named SharpCompress_NuGet_Token that can be retrieved from your NuGet account. I have it overriding the versions in the file on build, so they will be automatic thanks to GitVersion.

Let me know if there are Any changes needed or things that you may need help setting up or working with (I'll do what I can without compromising the security of the repo).

**Original Pull Request:** https://github.com/adamhathcock/sharpcompress/pull/542 **State:** closed **Merged:** No --- In response to #506 ### Changes Not Directly Related to Automated Release/Push - Updated Checkout Action - seems there have been many improvements since v1 - Removed dotnet-setup - unnecessary as all the images used have the specified dotnet sdk pre-installed ### GitVersion changes ` string version = args.Length > 0 ? args[0] : ""; ` and `RunTargetsAndExit(args.Skip(1).ToArray());` kinda bother me, but I wasn't sure how you would want to handle it, so I did a quick and dirty that allowed automation to run, but does require you to give it a version when specifying a target. I could just write it to a file and pull it in if the file exists if you want. GitVersion is fairly configurable, and you can manually push/create tags to change the major/minor revisions without configuring anything. ### Gihtub Releases This is dependant on a github token being created (and stored as a secret with the name `SharpCompress_Token`. It needs the `repo` and ` read:org` scopes (https://github.com/settings/tokens). If you add it as a secret for this repo, even if an action printed it to the logs, it should be sanitized before it was written. I have it set to save them as drafts with the nuget and symbol package attached. This should allow you to fill in wahtever release notes you like before publishing. This can be configured. ### NuGet Releases Similar to GitHub Releases, you need a secret named `SharpCompress_NuGet_Token` that can be retrieved from your NuGet account. I have it overriding the versions in the file on build, so they will be automatic thanks to GitVersion. #### Let me know if there are **Any** changes needed or things that you may need help setting up or working with (I'll do what I can without compromising the security of the repo).
claunia added the pull-request label 2026-01-29 22:18:56 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/sharpcompress#1085