-
Notifications
You must be signed in to change notification settings - Fork 553
Set up package publishing for daily, manual, and release builds #118
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
Merged
jeffhandley
merged 17 commits into
modelcontextprotocol:main
from
jeffhandley:jeffhandley/ci-build-packaging
Mar 27, 2025
Merged
Changes from all commits
Commits
Show all changes
17 commits
Select commit
Hold shift + click to select a range
732b6fe
Set up a root artifacts folder for all build/test/pack output
jeffhandley 0cfe50d
Update package Authors and Copyright
jeffhandley 3d5767e
Lower-case extension on README.md
jeffhandley 264fb55
Move package props to src folder. Use Version prefix and suffix props.
jeffhandley b2a6f47
Set up package publishing for daily, manual, and release builds
jeffhandley 22777ac
Only run publishing jobs to the modelcontextprotocol/csharp-sdk repo
jeffhandley f72caa9
Fix condition on docs workflow
jeffhandley dbbeecd
Update preview wording in README to apply to the package too
jeffhandley 3bf4252
Verify packaging succeeds in the CI workflow
jeffhandley 97358da
Allow a version suffix override in release workflow.
jeffhandley f044564
Merge branch 'main' into jeffhandley/ci-build-packaging
jeffhandley 5a88d41
De-dupe the README between the repo and the NuGet package
jeffhandley 7ea7169
New CI work
jeffhandley 4fba3e7
Remove duplicate README, reusing repo README as package README
jeffhandley 9183f87
Do not reuse the CI workflow for releases so we can build without tests.
jeffhandley 4ca4e0e
Add a release process doc
jeffhandley b729673
Fix bug in publishing; needs checkout step. Update comment for publish.
jeffhandley File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,37 @@ | ||
| # Release Process | ||
|
|
||
| The following process is used when publishing new releases to NuGet.org: | ||
|
|
||
| 1. **Ensure the CI workflow is fully green** | ||
| - Some of the integration tests are flaky and require re-running | ||
| - Once the state of the branch is known to be good, a release can proceed | ||
| - **The release workflow _does not_ run tests** | ||
|
|
||
| 2. **Create a new Release in GitHub** | ||
| - Use the link on the repo home page to [Create a new release](https://github.com/modelcontextprotocol/csharp-sdk/releases/new) | ||
| - Click the 'Choose a tag' dropdown button | ||
| - Type the name using the `v{major}.{minor}.{patch}-{suffix}` pattern | ||
| - Click 'Create new tag: ... on publish' | ||
| - Click the 'Target' dropdown button | ||
| - Choose the 'Recent Commits' tab | ||
| - Select the commit to use for the release, ensuring it's one from above where CI is known to be green | ||
| - Click the 'Previous tag' dropdown button | ||
| - Choose the previous release to use for generating release notes | ||
| - Click the 'Generate release notes button' | ||
| - This will add release notes into the Release description | ||
| - The generated release notes include what has changed and the list of new contributors | ||
| - Verify the Release title | ||
| - It will be populated to match the tag name to be created | ||
| - This should be retained, using the release title format matching the `v{major}.{minor}.{patch}-{suffix}` format | ||
| - Augment the Release description as desired | ||
| - This content is presented used on GitHub and is not persisted into any artifacts | ||
| - Check the 'Set as a pre-release' button under the release description if appropriate | ||
| - Click 'Public release' | ||
|
|
||
| 3. **Monitor the Release workflow** | ||
| - After publishing the release, a workflow will begin for producing the release's build artifacts and publishing the NuGet package to NuGet.org | ||
| - If the job fails, troubleshoot and re-run the workflow as needed | ||
| - Verify the package version becomes listed on at [https://nuget.org/packages/ModelContextProtocol](https://nuget.org/packages/ModelContextProtocol) | ||
|
|
||
| 4. **Update the source to increment the version number** | ||
| - Immediately after publishing a new release, the [`/src/Directory.Build.Props`](../../src/Directory.Build.props) file needs to be updated to bump the version to the next expected release version |
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
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
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
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
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
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.