-
Notifications
You must be signed in to change notification settings - Fork 0
Automatically upload new releases to NuGet #15
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
Merged
Changes from all commits
Commits
Show all changes
6 commits
Select commit
Hold shift + click to select a range
dd8701d
try testing automatic publishing (obtain temporary API key)
okramarenko 2f68eb5
fix a bug + make it faster to check
okramarenko f7c1869
update to a proper publish job
okramarenko d070522
add RELEASE.md
okramarenko 34178ff
add RELEASE mention in README
okramarenko 1a79689
resolve comments
okramarenko 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,67 @@ | ||
| ## Release process | ||
|
|
||
| `EntityFrameworkCore.SingleStore` releases are automated through GitHub Actions. A new NuGet package is built and published automatically when a new version tag is pushed to the GitHub repository. | ||
|
|
||
| A draft GitHub Release is also created automatically. The release remains a draft because the release notes must be reviewed and completed manually before publishing. | ||
|
|
||
| ### Prerequisites | ||
|
|
||
| Before creating a release tag: | ||
|
|
||
| * Make sure the release changes are merged into the default branch. | ||
| * Make sure CI is passing. | ||
| * Update `Version.props` with the new package version. | ||
| * Make sure the version tag matches the version in `Version.props`. | ||
| * The version tag must use the `vX.Y.Z` format. | ||
|
|
||
| For example, if `Version.props` contains version `9.0.1`, the release tag should be `v9.0.1`. | ||
|
|
||
| ### Creating a release | ||
|
|
||
| From the default branch, run: | ||
|
|
||
| ```bash | ||
| git checkout master | ||
| git pull origin master | ||
| git tag vX.Y.Z | ||
| git push origin vX.Y.Z | ||
| ``` | ||
|
|
||
| Replace `X.Y.Z` with the version being released. | ||
|
|
||
| After the tag is pushed, GitHub Actions will automatically: | ||
|
|
||
| 1. Run the test workflows. | ||
| 2. Build the EF Core provider package. | ||
| 3. Pack the NuGet package. | ||
| 4. Publish the `.nupkg` package to NuGet. | ||
| 5. Create a draft GitHub Release for the pushed tag. | ||
|
|
||
| ### Verifying the NuGet release | ||
|
|
||
| After the release workflow finishes successfully: | ||
|
|
||
| 1. Check that the GitHub Actions workflow completed without errors. | ||
| 2. Verify that the new package version is available on NuGet. | ||
| 3. Optionally install the released package locally: | ||
|
|
||
| ```bash | ||
| dotnet add package EntityFrameworkCore.SingleStore --version X.Y.Z | ||
| ``` | ||
|
|
||
| ### Publishing the GitHub Release | ||
|
|
||
| After the workflow creates the draft GitHub Release: | ||
|
|
||
| 1. Open the repository's Releases page. | ||
| 2. Open the draft release for the pushed tag, for example `vX.Y.Z`. | ||
| 3. Review and complete the release notes. | ||
| 4. Publish the GitHub Release. | ||
|
|
||
| The GitHub Release is intentionally kept as a draft because it requires complete release notes before publishing. | ||
|
|
||
| ### Failed releases | ||
|
|
||
| If the release workflow fails before publishing to NuGet, fix the issue and rerun the workflow or recreate the tag as needed. | ||
|
|
||
| If the package was already published to NuGet, do not reuse the same version number. NuGet package versions are immutable, so a fix must be released with a new version. |
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.