This document describes the exact steps to cut a release of the AdminLTE 4 ASP.NET Core package and publish it to nuget.org.
-
.NET SDK 10.0.x installed. In this environment the SDK lives at
~/.dotnetand is not onPATHby default, so export it first:export PATH="$HOME/.dotnet:$PATH" dotnet --version # should print 10.0.301 (or newer 10.0.x)
-
A NuGet API key with push rights to the
ColorlibHQ.AdminLTE.AspNetCorepackage ID. Create one at https://www.nuget.org/account/apikeys.
The package version is the <Version> element in
src/ColorlibHQ.AdminLTE.AspNetCore/ColorlibHQ.AdminLTE.AspNetCore.csproj.
Update it to the new release version (the port family currently tracks 0.2.0):
<Version>0.2.0</Version>Also update <PackageReleaseNotes> in the same file if appropriate.
export PATH="$HOME/.dotnet:$PATH"
dotnet build -c ReleaseConfirm 0 errors.
dotnet pack src/ColorlibHQ.AdminLTE.AspNetCore -c ReleaseThis produces both packages under
src/ColorlibHQ.AdminLTE.AspNetCore/bin/Release/:
ColorlibHQ.AdminLTE.AspNetCore.<version>.nupkg(main package)ColorlibHQ.AdminLTE.AspNetCore.<version>.snupkg(symbols)
Verify there are no pack warnings and that the package contains the
compiled DLL, README.md, and the AdminLTE/Bootstrap staticwebassets/:
unzip -l src/ColorlibHQ.AdminLTE.AspNetCore/bin/Release/ColorlibHQ.AdminLTE.AspNetCore.<version>.nupkggit tag v0.2.0
git push origin v0.2.0(Match the tag to the <Version> you set in step 1.)
dotnet nuget push \
src/ColorlibHQ.AdminLTE.AspNetCore/bin/Release/ColorlibHQ.AdminLTE.AspNetCore.0.2.0.nupkg \
--api-key <KEY> \
--source https://api.nuget.org/v3/index.jsonThe matching .snupkg symbol package is pushed automatically alongside the
.nupkg when both sit in the same directory. To push it explicitly:
dotnet nuget push \
src/ColorlibHQ.AdminLTE.AspNetCore/bin/Release/ColorlibHQ.AdminLTE.AspNetCore.0.2.0.snupkg \
--api-key <KEY> \
--source https://api.nuget.org/v3/index.jsonReplace <KEY> with your nuget.org API key and 0.2.0 with the released
version. Do not commit the key.
dotnet nuget pushis irreversible — a published version cannot be replaced, only unlisted. Double-check the version and package contents before pushing.- CI (
.github/workflows/ci.yml) runs restore → build → pack on every push tomainand on pull requests, so a green CI run is a good gate before tagging.