-
Notifications
You must be signed in to change notification settings - Fork 0
V9.0.3/package maintenance #6
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
WalkthroughThis update revises package dependencies, Docker and test environment images, and the CI pipeline. It upgrades several package versions, updates the Dockerfile and test runner image tags, adds new release notes, and refactors the CI workflow to use reusable workflows with updated OS versions and simplified job definitions. Changes
Sequence Diagram(s)sequenceDiagram
participant Developer
participant GitHub Actions
participant Reusable Workflows
participant Artifact Store
Developer->>GitHub Actions: Push code / PR
GitHub Actions->>Reusable Workflows: Call jobs-dotnet-build (build)
Reusable Workflows-->>GitHub Actions: Return build outputs
GitHub Actions->>Reusable Workflows: Call jobs-dotnet-pack (pack)
Reusable Workflows-->>Artifact Store: Upload packed artifact
GitHub Actions->>Reusable Workflows: Call jobs-dotnet-test (test)
Reusable Workflows-->>GitHub Actions: Test results
GitHub Actions->>Reusable Workflows: Call jobs-nuget-push (deploy)
Reusable Workflows-->>Artifact Store: Push package
Possibly related PRs
Poem
📜 Recent review detailsConfiguration used: CodeRabbit UI 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
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. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed 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)
Other keywords and placeholders
CodeRabbit Configuration File (
|
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.
Pull Request Overview
This PR focuses on package maintenance by upgrading dependencies, simplifying workflows, and improving Docker and testing configurations. Key changes include updating dependency versions, refactoring GitHub Actions workflows to utilize reusable jobs, and revising Docker images and environments.
Reviewed Changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| testenvironments.json | Updated Docker image version for the Docker-Ubuntu test environment |
| Directory.Packages.props | Upgraded package versions and updated dependency configurations |
| CHANGELOG.md | Added a changelog entry to document version 9.0.3 updates |
| .nuget/Codebelt.Extensions.Globalization/PackageReleaseNotes.txt | Revised release notes to reflect dependency upgrades and version changes |
| .github/workflows/pipelines.yml | Refactored workflows to use reusable workflows and updated job configurations |
| .docfx/Dockerfile.docfx | Updated Dockerfile for DocFX with new image versions and platform specifications |
| # ALM | ||
| - CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs) | ||
|
|
||
| Version 9.0.2 |
Copilot
AI
May 25, 2025
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.
There appears to be a duplicate version entry (Version 9.0.2) following the update to Version 9.0.3. Please verify whether the older release note should be removed to avoid confusion.
| FROM nginx:1.27.5-alpine AS final | ||
| WORKDIR /usr/share/nginx/html | ||
| COPY --from=build /build/docfx/wwwroot /usr/share/nginx/html |
Copilot
AI
May 25, 2025
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.
Consider reusing the previously built base (using 'FROM base AS final') instead of re-fetching the nginx image to ensure consistency in the platform specification across stages.
| FROM nginx:1.27.5-alpine AS final | |
| WORKDIR /usr/share/nginx/html | |
| COPY --from=build /build/docfx/wwwroot /usr/share/nginx/html | |
| FROM base AS final | |
| WORKDIR /usr/share/nginx/html | |
| COPY --from=build /build/docfx/wwwroot /usr/share/nginx/html |
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
🧹 Nitpick comments (2)
.docfx/Dockerfile.docfx (1)
6-6: Replace ADD with COPY for directories
UsingADDfor local folders can lead to unexpected behaviors (e.g., auto-extraction). Switch toCOPYfor clarity and performance.Apply this diff:
- ADD [".", "docfx"] + COPY . docfx🧰 Tools
🪛 Hadolint (2.12.0)
[error] 6-6: Use COPY instead of ADD for files and folders
(DL3020)
.github/workflows/pipelines.yml (1)
87-92: Update deploy job to usejobs-nuget-pushworkflow and simplify configuration input
Thedeployjob now depends on all prior jobs and invokescodebeltnet/jobs-nuget-push. Sinceworkflow_dispatch.configurationalready defaults toRelease, you can simplify the expression:configuration: ${{ inputs.configuration }}Additionally, consider pinning the reusable workflow reference to a commit SHA or more specific tag (instead of a floating
v1) to avoid unexpected breaking changes.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (6)
.docfx/Dockerfile.docfx(1 hunks).github/workflows/pipelines.yml(2 hunks).nuget/Codebelt.Extensions.Globalization/PackageReleaseNotes.txt(1 hunks)CHANGELOG.md(1 hunks)Directory.Packages.props(1 hunks)testenvironments.json(1 hunks)
🧰 Additional context used
🪛 Hadolint (2.12.0)
.docfx/Dockerfile.docfx
[error] 6-6: Use COPY instead of ADD for files and folders
(DL3020)
🔇 Additional comments (6)
Directory.Packages.props (1)
6-8: Version bumps look correct
The updated versions forCodebelt.Extensions.Xunit,Codebelt.Extensions.YamlDotNet,Microsoft.NET.Test.Sdk, andxunit.runner.visualstudioalign with the PR objectives and central version management.Also applies to: 14-14
CHANGELOG.md (1)
10-12: Changelog entry is clear and concise
The header and description correctly capture the service update focus on package dependencies for version 9.0.3..nuget/Codebelt.Extensions.Globalization/PackageReleaseNotes.txt (1)
1-6: Package release notes formatting is consistent
The new Version 9.0.3 entry follows the existing convention and clearly documents the dependency upgrades across supported TFMs..github/workflows/pipelines.yml (3)
23-33: Replace build job with reusable workflow
Thebuildjob now invokes thecodebeltnet/jobs-dotnet-buildreusable workflow, consolidating your build logic and eliminating inline steps. Verify that theglobalization.snkkey file exists at the expected path and that bothGCP_TOKENandGCP_BUCKETNAMEare correctly configured in repository secrets.
36-45: Replace pack job with reusable workflow
Thepackjob now calls thecodebeltnet/jobs-dotnet-packreusable workflow and reuses theversionoutput from the build. This keeps packaging consistent across projects—looks good as-is.
48-59: Refactor test job to use reusable workflow and update OS matrix
Thetestjob now leveragescodebeltnet/jobs-dotnet-testand targets Ubuntu 24.04 and Windows 2022.
- Confirm dropping other runners (e.g., macOS) is intentional for your support matrix.
- Ensure the
-p:SkipSignAssembly=trueswitch remains necessary and documented in downstream workflows.
| FROM --platform=$BUILDPLATFORM nginx:1.27.5-alpine AS base | ||
| RUN rm -rf /usr/share/nginx/html/* | ||
|
|
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.
🛠️ Refactor suggestion
Unused cleanup stage – refactor or remove
The base stage cleans /usr/share/nginx/html but is never used in the final image. To ensure the cleanup step applies, either remove the base stage entirely or derive the final stage from it.
Example change:
-FROM nginx:1.27.5-alpine AS final
+FROM base AS finalThis preserves the cleanup before copying the built content.
Committable suggestion skipped: line range outside the PR's diff.
🤖 Prompt for AI Agents
In .docfx/Dockerfile.docfx at lines 1 to 3, the base stage removes files from
/usr/share/nginx/html but is not used in the final image, making the cleanup
ineffective. To fix this, either remove the base stage if unused or modify the
final stage to inherit from the base stage so that the cleanup step applies
before adding the built content.
|



This pull request introduces several updates to improve dependency management, streamline workflows, and update configurations. Key changes include upgrading dependencies, refactoring GitHub Actions workflows to use reusable workflows, and updating Docker and testing environments.
Dependency Updates:
Directory.Packages.props, includingCodebelt.Extensions.Xunitto10.0.1,Codebelt.Extensions.YamlDotNetto9.0.3, andMicrosoft.NET.Test.Sdkto17.14.0among others.PackageReleaseNotes.txtto reflect version9.0.3, highlighting dependency upgrades for all supported target frameworks.Workflow Simplification:
.github/workflows/pipelines.ymlto use reusable workflows for build, pack, test, and nuget jobs, reducing redundancy and improving maintainability. [1] [2]Docker and Environment Updates:
.docfx/Dockerfile.docfxto usenginx:1.27.5-alpineandcodebeltnet/docfx:2.78.3with platform-specific builds.testenvironments.jsonfor theDocker-Ubuntuenvironment togimlichael/ubuntu-testrunner:mono-net8.0.409-9.0.300.Documentation:
9.0.3inCHANGELOG.md, describing it as a service update focusing on package dependencies.Summary by CodeRabbit