-
-
Notifications
You must be signed in to change notification settings - Fork 0
Updated to latest versions #55
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
Conversation
WalkthroughThe PR adds a GitHub release configuration file, updates CI/CD workflows to use GitVersion GitHub Actions (v6.4.0) instead of dotnet tools, adjusts SonarQube token handling to environment variables, reconfigures GitVersion from main to develop branch tracking, and updates test project dependencies. Changes
Sequence DiagramsequenceDiagram
actor Workflow as GitHub Action
participant OldGV as Old GitVersion<br/>(dotnet tool)
participant NewGV as New GitVersion<br/>(Actions v4.2.0)
participant SQ as SonarQube
rect rgb(100, 150, 200)
Note over Workflow: Previous Flow
Workflow->>OldGV: Install Tool (v5.12.0)
Workflow->>OldGV: Execute with Config
OldGV-->>Workflow: Version Info
Workflow->>SQ: /d:sonar.login={secret}
end
rect rgb(150, 180, 220)
Note over Workflow: New Flow
Workflow->>NewGV: Setup (v6.4.0)
Workflow->>NewGV: Execute (no config flag)
NewGV-->>Workflow: Version Info
Workflow->>SQ: /d:sonar.token={env.SONAR_TOKEN}
end
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20–25 minutes Areas requiring extra attention:
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 inconclusive)
✅ Passed checks (2 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
Comment |
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (5)
.github/release.yml(1 hunks).github/workflows/ci-build.yml(2 hunks).github/workflows/release-build.yml(1 hunks)GitVersion.yml(1 hunks)src/AspNetCore.Utilities.FontAwesomeTagHelpers.Tests/AspNetCore.Utilities.FontAwesomeTagHelpers.Tests.csproj(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: Analyze Code Quality
| - name: Build and analyze | ||
| env: | ||
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any | ||
| SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} | ||
| shell: powershell | ||
| run: | | ||
| .\.sonar\scanner\dotnet-sonarscanner begin /k:"IowaComputerGurus_aspnetcore.utilities.fontawesometaghelpers" /o:"iowacomputergurus-github" /d:sonar.login="${{ secrets.SONAR_TOKEN }}" /d:sonar.host.url="https://sonarcloud.io" /n:"AspNetCore Utilities Font Awesome Tag Helpers" | ||
| .\.sonar\scanner\dotnet-sonarscanner begin /k:"IowaComputerGurus_aspnetcore.utilities.fontawesometaghelpers" /o:"iowacomputergurus-github" /d:sonar.token="${{ env.SONAR_TOKEN }}" /n:"AspNetCore Utilities Font Awesome Tag Helpers" | ||
| dotnet restore "${{ env.solution-path }}" | ||
| dotnet build "${{ env.solution-path }}" --no-restore --configuration Release -p:version=${{ steps.gitversion.outputs.majorMinorPatch }} | ||
| dotnet test "${{ env.solution-path }}" --no-build --configuration Release --collect "XPlat Code Coverage" -- DataCollectionRunSettings.DataCollectors.DataCollector.Configuration.Format=opencover --logger "trx;LogFileName=unittests.trx" | ||
| .\.sonar\scanner\dotnet-sonarscanner end /d:sonar.login="${{ secrets.SONAR_TOKEN }}" | ||
| .\.sonar\scanner\dotnet-sonarscanner end /d:sonar.login="${{ env.SONAR_TOKEN }}" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
Script executed:
#!/bin/bash
# Read the workflow file to see full context around the SonarQube scanner usage
head -110 .github/workflows/ci-build.yml | tail -40Repository: IowaComputerGurus/aspnetcore.utilities.fontawesometaghelpers
<shell_result>
Repository: IowaComputerGurus/aspnetcore.utilities.fontawesometaghelpers
Exit code: 0
stdout:
with:
path: ~\sonar\cache
key: ${{ runner.os }}-sonar
restore-keys: ${{ runner.os }}-sonar
- name: Cache SonarCloud scanner
id: cache-sonar-scanner
uses: actions/cache@v4.3.0
with:
path: .\.sonar\scanner
key: ${{ runner.os }}-sonar-scanner
restore-keys: ${{ runner.os }}-sonar-scanner
- name: Install SonarCloud scanner
if: steps.cache-sonar-scanner.outputs.cache-hit != 'true'
shell: powershell
run: |
New-Item -Path .\.sonar\scanner -ItemType Directory
dotnet tool update dotnet-sonarscanner --tool-path .\.sonar\scanner
- name: Install GitVersion
uses: gittools/actions/gitversion/setup@v4.2.0
with:
versionSpec: '6.4.0'
- name: Determine Version
id: gitversion
uses: gittools/actions/gitversion/execute@v4.2.0
- name: Build and analyze
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
shell: powershell
run: |
.\.sonar\scanner\dotnet-sonarscanner begin /k:"IowaComputerGurus_aspnetcore.utilities.fontawesometaghelpers" /o:"iowacomputergurus-github" /d:sonar.token="${{ env.SONAR_TOKEN }}" /n:"AspNetCore Utilities Font Awesome Tag Helpers"
dotnet restore "${{ env.solution-path }}"
dotnet build "${{ env.solution-path }}" --no-restore --configuration Release -p:version=${{ steps.gitversion.outputs.majorMinorPatch }}
dotnet test "${{ env.solution-path }}" --no-build --configuration Release --collect "XPlat Code Coverage" -- DataCollectionRunSettings.DataCollectors.DataCollector.Configuration.Format=opencover --logger "trx;LogFileName=unittests.trx"
.\.sonar\scanner\dotnet-sonarscanner end /d:sonar.login="${{ env.SONAR_TOKEN }}"
</shell_result>
Script executed:
#!/bin/bash
# Check if there's any documentation or configuration files in the repo
fd -e md -e txt -e json | xargs rg -l "sonar" 2>/dev/null | head -10Repository: IowaComputerGurus/aspnetcore.utilities.fontawesometaghelpers
<shell_result>
Repository: IowaComputerGurus/aspnetcore.utilities.fontawesometaghelpers
Exit code: 0
stdout:
README.md
</shell_result>
Script executed:
#!/bin/bash
# Check README for any SonarQube configuration details
cat README.md | grep -A 10 -B 10 -i sonarRepository: IowaComputerGurus/aspnetcore.utilities.fontawesometaghelpers
<shell_result>
Repository: IowaComputerGurus/aspnetcore.utilities.fontawesometaghelpers
Exit code: 0
stdout:
# AspNetCore Font Awesome Tag Helpers 
A collection of TagHelpers for ASP.NET Core that make utilizing the FontAwesome library easier to use for developers

 
## SonarCloud Analysis
[](https://sonarcloud.io/dashboard?id=IowaComputerGurus_aspnetcore.utilities.fontawesometaghelpers)
[](https://sonarcloud.io/dashboard?id=IowaComputerGurus_aspnetcore.utilities.fontawesometaghelpers)
[](https://sonarcloud.io/dashboard?id=IowaComputerGurus_aspnetcore.utilities.fontawesometaghelpers)
[](https://sonarcloud.io/dashboard?id=IowaComputerGurus_aspnetcore.utilities.fontawesometaghelpers)
## Usage Expecations
These tag helpers are only for markup display, your web project must properly include references to FontAwesome and must abide by all license and other requirements of FontAwesome for the functionality to be utilized here. For more on how to include FontAwesome within your project please reference their documentation.
## Setup - Registering TagHelpers
You must modify your `_viewimports.cshtml` file by adding
</shell_result>
Fix inconsistent SonarQube scanner parameters: use sonar.token in both begin and end steps.
The workflow uses /d:sonar.token in the begin step (line 101) but /d:sonar.login in the end step (line 105). The sonar.login parameter is deprecated; use /d:sonar.login="${{ env.SONAR_TOKEN }}" should be /d:sonar.token="${{ env.SONAR_TOKEN }}" to match the begin step and align with modern SonarQube/SonarCloud authentication standards.
🤖 Prompt for AI Agents
.github/workflows/ci-build.yml around lines 95 to 105: the SonarQube scanner end
step uses the deprecated /d:sonar.login parameter while the begin step uses
/d:sonar.token; update the end step to use /d:sonar.token="${{ env.SONAR_TOKEN
}}" so both begin and end use the same modern sonar.token parameter for
authentication.
| - name: Install GitVersion | ||
| run: dotnet tool install --global GitVersion.Tool --version 5.12.0 | ||
| uses: gittools/actions/gitversion/setup@v4.2.0 | ||
| with: | ||
| versionSpec: '6.4.0' | ||
|
|
||
| - name: Determine Version | ||
| id: gitversion | ||
| uses: gittools/actions/gitversion/execute@v0.10.2 | ||
| with: | ||
| useConfigFile: true | ||
| uses: gittools/actions/gitversion/execute@v4.2.0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
Script executed:
#!/bin/bash
# Find GitVersion configuration files in the repository
echo "=== Searching for GitVersion configuration files ==="
fd -e yml -e yaml | grep -iE 'gitversion|version' | head -20Repository: IowaComputerGurus/aspnetcore.utilities.fontawesometaghelpers
<shell_result>
Repository: IowaComputerGurus/aspnetcore.utilities.fontawesometaghelpers
Exit code: 0
stdout:
=== Searching for GitVersion configuration files ===
GitVersion.yml
</shell_result>
Script executed:
#!/bin/bash
# Check the content of GitVersion.yml
echo "=== GitVersion.yml content ==="
cat -n GitVersion.ymlRepository: IowaComputerGurus/aspnetcore.utilities.fontawesometaghelpers
<shell_result>
Repository: IowaComputerGurus/aspnetcore.utilities.fontawesometaghelpers
Exit code: 0
stdout:
=== GitVersion.yml content ===
1 mode: ContinuousDeployment
2 next-version: 1.0.0
3 branches:
4 develop:
5 regex: develop
6 label: 'alpha'
7 increment: Patch
8 prevent-increment:
9 when-current-commit-tagged: true
10 source-branches: []
11 pull-request:
12 regex: ^(pull-requests|pull|pr)[\/-](?<Number>\d+)
13 label: 'pr{Number}'
14 increment: Patch
15 is-release-branch: false
16 source-branches: []
17 ignore:
18 sha: []
19 merge-message-formats: {}
</shell_result>
gittools/actions/gitversion execute v4.2.0 useConfigFile documentation
<web_search_result>
Summary: The GitTools GitVersion "execute" GitHub Action (v4.2.0) accepts a useConfigFile boolean input. Set useConfigFile: true to tell the action to load a GitVersion configuration file (default name GitVersion.yml) and useConfigFile: false (or omit) to run with GitVersion defaults. If true you can also specify configFilePath to point to a non‑standard location. Example usage:
- uses: gittools/actions/gitversion/execute@v4.2.0
with:
useConfigFile: true
configFilePath: GitVersion.yml
Documentation / examples: GitTools actions examples for the execute step and the GitHub Actions example showing useConfigFile/configFilePath. [1][2]
Sources:
[1] GitTools/actions — execute example (GitHub docs/examples). (github.com)
[2] Example GitHub Actions workflow using gittools/actions/gitversion/execute with useConfigFile and configFilePath. (gdservices.io)
Citations:
- 1: https://github.com/GitTools/actions/blob/main/docs/examples/github/gitversion/execute.md
- 2: https://gdservices.io/automatic-version-tagging-and-release-with-github-actions?utm_source=openai
</web_search_result>
useConfigFile: true is required for GitVersion.yml to be recognized by the new GitHub Actions.
The web search confirms that gittools/actions/gitversion/execute@v4.2.0 requires explicit useConfigFile: true to load the GitVersion.yml configuration file. Without this parameter, the action uses GitVersion defaults and ignores your repository's configuration.
Since your repository contains a GitVersion.yml file with critical configuration (ContinuousDeployment mode, branch-specific versioning rules, alpha labels), the removal of useConfigFile: true is a breaking change. The new gittools/actions/gitversion/execute@v4.2.0 step must include:
- name: Determine Version
id: gitversion
uses: gittools/actions/gitversion/execute@v4.2.0
with:
useConfigFile: trueWithout this, custom versioning logic will be lost and the build will use default GitVersion behavior instead.
🤖 Prompt for AI Agents
.github/workflows/release-build.yml around lines 27 to 34: the GitVersion
execute action is missing useConfigFile: true so your repository GitVersion.yml
is ignored; update the "Determine Version" step to add a with section that sets
useConfigFile: true so the action loads and honors your repository's
GitVersion.yml configuration.


Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.