Skip to content

Fixes #33 / Updated csproj file. Updated yml files with new dotnet command fixed… #34

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 2 commits into from
Jun 20, 2025

Conversation

AkrausGH
Copy link
Contributor

@AkrausGH AkrausGH commented Jun 20, 2025

Updated the target framework for the solution. Updated the yml files with new GitVersions and dotnet commands.

Summary by CodeRabbit

  • Chores
    • Updated build and release workflows to use .NET 8.0 for improved compatibility and support.
    • Changed the method of installing and configuring versioning tools in CI/CD workflows.
    • Simplified and updated versioning configuration, including branch and tagging conventions.
    • Upgraded project target framework to .NET 8.0 for the unit testing library.

@AkrausGH AkrausGH linked an issue Jun 20, 2025 that may be closed by this pull request
Copy link

coderabbitai bot commented Jun 20, 2025

Walkthrough

The changes update CI and release workflows to use .NET 8.0 instead of 6.0, alter the method for installing GitVersion, and modify the NuGet publishing command. The GitVersion configuration is simplified, with branch definitions adjusted and versioning conventions updated. The unit testing project is also retargeted to .NET 8.0.

Changes

File(s) Change Summary
.github/workflows/ci-build.yml
.github/workflows/release-build.yml
Updated to use .NET 8.0, changed GitVersion installation from GitHub Action to dotnet tool, and modified NuGet push command syntax.
GitVersion.yml Simplified configuration: reset next version, removed develop/hotfix branches, updated main/pull-request, renamed/removed flags.
src/NetCore.Utilities.UnitTesting/NetCore.Utilities.UnitTesting.csproj Updated target framework from .NET 6.0 to .NET 8.0.

Sequence Diagram(s)

sequenceDiagram
    participant GitHub Actions
    participant Runner
    participant dotnet
    participant GitVersion
    participant NuGet

    GitHub Actions->>Runner: Start CI/Release workflow
    Runner->>dotnet: Install .NET 8.0 SDK
    Runner->>dotnet: Install GitVersion.Tool (5.12.0) globally
    Runner->>GitVersion: Generate version info
    Runner->>dotnet: Build and package project
    Runner->>dotnet: Push .nupkg to NuGet with API key
    dotnet->>NuGet: Upload package
Loading

Assessment against linked issues

Objective Addressed Explanation
Update build process to push to NuGet using dotnet nuget push with correct syntax (#33)

Assessment against linked issues: Out-of-scope changes

Code Change Explanation
Update of GitVersion.yml: Simplification, branch removal, version/tag changes (GitVersion.yml) These changes go beyond the specific objective of updating the NuGet push command for release.
Retargeting unit test project to .NET 8.0 (src/NetCore.Utilities.UnitTesting/NetCore.Utilities.UnitTesting.csproj) Changing the target framework is unrelated to the NuGet push process update.
Updating .NET SDK version in CI workflow (ci-build.yml, release-build.yml) Objective was specific to NuGet push command, not .NET SDK version update.
Changing GitVersion installation method (ci-build.yml, release-build.yml) The issue did not mention updating GitVersion installation approach.

Possibly related PRs

Suggested reviewers

  • mitchelsellers

Poem

A hop and a skip, we leap to eight,
.NET is shiny, the workflows are great!
GitVersion’s new, our branches are few,
NuGet is ready for something brand new.
With paws on the keys, we code and we cheer,
The future is bright—release time is near! 🐇✨

✨ Finishing Touches
🧪 Generate Unit Tests
  • Create PR with Unit Tests
  • Post Copyable Unit Tests in Comment
  • Commit Unit Tests in branch 33-update-production-relese-for-nuget

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai auto-generate unit tests to generate unit tests for this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (4)
src/NetCore.Utilities.UnitTesting/NetCore.Utilities.UnitTesting.csproj (1)

21-21: Confirm TargetFramework update to .NET 8.0
Verify that retargeting to <TargetFramework>net8.0</TargetFramework> aligns with all consumers and downstream pipelines. Consider multi-targeting (e.g., net6.0;net8.0) if backward compatibility is required, and review NuGet package dependencies (EF Core 7) for compatibility or upgrade to EF Core 8.

GitVersion.yml (1)

4-8: Review ‘main’ branch configuration
Using regex: main may only match literal “main”; consider anchoring with ^main$ for precision. Also, an empty source-branches list prevents feature-branch metadata—ensure this is intentional.

.github/workflows/ci-build.yml (1)

27-27: Verify GitVersion.Tool installation path
Installing GitVersion.Tool globally (--global) requires ~/.dotnet/tools to be on the PATH for subsequent steps. Consider switching to a tool manifest (dotnet tool restore) or explicitly adding the tools directory to PATH.

.github/workflows/release-build.yml (1)

26-26: Ensure GitVersion.Tool is accessible
Installing GitVersion.Tool globally requires ~/.dotnet/tools on PATH. Consider using a manifest (dotnet tool restore) or explicitly exporting the tools path to avoid “command not found” errors.

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 5da6b05 and a7cf748.

📒 Files selected for processing (4)
  • .github/workflows/ci-build.yml (1 hunks)
  • .github/workflows/release-build.yml (2 hunks)
  • GitVersion.yml (1 hunks)
  • src/NetCore.Utilities.UnitTesting/NetCore.Utilities.UnitTesting.csproj (1 hunks)
🧰 Additional context used
🪛 YAMLlint (1.37.1)
GitVersion.yml

[error] 3-3: trailing spaces

(trailing-spaces)

.github/workflows/ci-build.yml

[error] 25-25: trailing spaces

(trailing-spaces)

.github/workflows/release-build.yml

[error] 24-24: trailing spaces

(trailing-spaces)

🪛 GitHub Actions: CI Build
GitVersion.yml

[error] 1-1: GitVersion step failed: output is not valid JSON, indicating a problem with version calculation or configuration.

🔇 Additional comments (5)
GitVersion.yml (2)

2-2: Reset initial version to 1.0.0 requires confirmation
Resetting next-version from 6.0.5 to 1.0.0 will restart semantic versioning; confirm this aligns with your release schedule and that downstream workflows handle the jump appropriately.


11-14: Validate ‘pull-request’ tagging settings
Renaming labeltag and label-number-patterntag-number-pattern is correct, but verify your PR naming conventions (e.g., pr/123) fit (pull|pull\-requests|pr)[/-] and the tag-number regex. Also confirm prevent-increment-of-merged-branch-version: false aligns with your version-control policy.

.github/workflows/ci-build.yml (1)

24-24: Upgrade CI to .NET SDK 8.0.x
Retargeting CI to 8.0.x aligns with the project; ensure that no remaining workflows or scripts reference the old SDK (6.0.x).

.github/workflows/release-build.yml (2)

23-23: Upgrade release workflow to .NET SDK 8.0.x
Updating actions/setup-dotnet@v4 to dotnet-version: 8.0.x is consistent with CI and project. Verify there are no residual 6.0 references.


40-40: ```shell
#!/bin/bash
sed -n '1,200p' .github/workflows/release-build.yml


</details>

</blockquote></details>

</details>

<!-- This is an auto-generated comment by CodeRabbit for review status -->

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (3)
.github/workflows/ci-build.yml (1)

25-25: Remove trailing whitespace
These blank lines contain trailing spaces and should be cleaned up to satisfy YAML lint rules.

Also applies to: 28-28

.github/workflows/release-build.yml (2)

24-24: Remove trailing whitespace
Several lines contain trailing spaces, which YAML lint flags as errors. Please trim these to avoid lint failures.

Also applies to: 27-27, 33-33, 38-38


40-40: Publish packages via the dotnet CLI
Switching to dotnet nuget push with a Unix-style glob is modern and works cross-platform. Consider adding --skip-duplicate to avoid failures if the package already exists in NuGet.

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between a7cf748 and 97f60f2.

📒 Files selected for processing (2)
  • .github/workflows/ci-build.yml (1 hunks)
  • .github/workflows/release-build.yml (1 hunks)
🧰 Additional context used
🪛 YAMLlint (1.37.1)
.github/workflows/ci-build.yml

[error] 25-25: trailing spaces

(trailing-spaces)


[error] 28-28: trailing spaces

(trailing-spaces)

.github/workflows/release-build.yml

[error] 24-24: trailing spaces

(trailing-spaces)


[error] 27-27: trailing spaces

(trailing-spaces)


[error] 33-33: trailing spaces

(trailing-spaces)


[error] 38-38: trailing spaces

(trailing-spaces)

🔇 Additional comments (6)
.github/workflows/ci-build.yml (3)

24-24: Upgrade .NET SDK to 8.0.x
Updating the workflow to target .NET 8.0 aligns with the project retargeting.


27-27: Install GitVersion.Tool as a global tool
Using dotnet tool install --global GitVersion.Tool --version 5.12.0 is valid, but verify that the tool’s install path (typically $HOME/.dotnet/tools) is added to PATH so the CLI is available for the execute step.


31-31: Verify GitVersion execute action version
The workflow now uses gittools/actions/gitversion/execute@v0.10.2, which is significantly older than the previous v3.x versions. Ensure this downgrade is intentional and that it fully supports .NET 8.0. You can check consistency across workflows with:

#!/bin/bash
# Check GitVersion execute action versions in workflows
rg -n "gittools/actions/gitversion/execute@" .github/workflows
.github/workflows/release-build.yml (3)

23-23: Upgrade .NET SDK to 8.0.x
Aligns the release pipeline with the updated target framework.


27-27: Install GitVersion.Tool as a global tool
Consistent with the CI build, but confirm that version 5.12.0 is the intended release and that the global tool path is in PATH.


31-31: Verify GitVersion execute action version
This step uses gittools/actions/gitversion/execute@v0.10.2. Confirm that this version is intentional and fully compatible, or consider aligning with the latest stable execute action.

@AkrausGH AkrausGH merged commit fa89cbc into develop Jun 20, 2025
2 checks passed
@AkrausGH AkrausGH deleted the 33-update-production-relese-for-nuget branch June 20, 2025 15:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update Production Relese for NuGet
1 participant