Skip to content

V9.0.3/package maintenance #10

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 4 commits into from
May 25, 2025
Merged

V9.0.3/package maintenance #10

merged 4 commits into from
May 25, 2025

Conversation

gimlichael
Copy link
Member

@gimlichael gimlichael commented May 25, 2025

This pull request includes updates to dependencies, Docker configurations, CI/CD workflows, and release notes to improve compatibility, streamline processes, and ensure the latest versions are used. Below is a summary of the most important changes:

Dependency Updates

  • Updated several package dependencies in Directory.Packages.props, including Codebelt.Extensions.Xunit.App, Cuemon.AspNetCore.Authentication, Cuemon.Security.Cryptography, and Microsoft.NET.Test.Sdk, to their latest versions.
  • Updated the Docker image for the test environment in testenvironments.json to use gimlichael/ubuntu-testrunner:net8.0.409-9.0.300.

Dockerfile Enhancements

  • Modified .docfx/Dockerfile.docfx to include platform-specific builds using the --platform flag and updated the base and build images to newer versions (nginx:1.27.5-alpine and codebeltnet/docfx:2.78.3).

CI/CD Workflow Simplifications

  • Refactored .github/workflows/pipelines.yml to replace inline job definitions (build, pack, test, and nuget) with reusable workflows from codebeltnet/jobs-*. This reduces duplication and centralizes workflow logic. [1] [2]

Documentation Updates

  • Added release notes for version 9.0.3 in .nuget/Codebelt.Extensions.AwsSignature4/PackageReleaseNotes.txt, highlighting dependency upgrades for all supported target frameworks.
  • Updated the CHANGELOG.md to include an entry for version 9.0.3, describing it as a service update focused on package dependencies.

Summary by CodeRabbit

  • Chores
    • Updated package dependencies and Docker image versions to the latest compatible releases.
    • Refreshed test environment configuration with a new Docker image tag.
    • Improved pipeline workflows by modularizing job logic and standardizing job naming.
  • Documentation
    • Added release notes for version 9.0.3, highlighting support for .NET 8 and .NET 9 and updated dependency compatibility.
    • Updated changelog with a new entry for version 9.0.3, focusing on service updates to dependencies.

@gimlichael gimlichael self-assigned this May 25, 2025
Copy link

coderabbitai bot commented May 25, 2025

Walkthrough

This update revises dependency versions, test environment Docker images, and documentation across the repository. It upgrades the .docfx Dockerfile base images and build tools, refactors the GitHub Actions workflow to use modular reusable jobs, and adds new release notes and changelog entries for version 9.0.3.

Changes

File(s) Change Summary
.docfx/Dockerfile.docfx Upgraded nginx to 1.27.5-alpine, docfx to 2.78.3, and added dynamic platform specification.
.github/workflows/pipelines.yml Refactored to use reusable workflow jobs and updated naming conventions.
Directory.Packages.props Updated multiple package dependency versions.
testenvironments.json Updated Docker image tag for "Docker-Ubuntu" test environment.
.nuget/Codebelt.Extensions.AwsSignature4/PackageReleaseNotes.txt Added 9.0.3 release notes with precise dependency compatibility details.
CHANGELOG.md Added 9.0.3 changelog entry noting dependency updates.

Sequence Diagram(s)

sequenceDiagram
  actor Developer
  participant GitHub Actions
  participant Reusable Workflow (Build/Pack/Test/Deploy)
  participant Docker Build
  participant Nginx Container

  Developer->>GitHub Actions: Push code / PR
  GitHub Actions->>Reusable Workflow (Build): Call build job with parameters
  GitHub Actions->>Reusable Workflow (Pack): Call pack job with parameters
  GitHub Actions->>Reusable Workflow (Test): Call test job with parameters
  GitHub Actions->>Reusable Workflow (Deploy): Call deploy job with parameters
  Developer->>Docker Build: Build .docfx Docker image
  Docker Build->>Nginx Container: Deploy generated site
Loading

Possibly related PRs

Poem

A hop, a skip, dependencies rise,
Docker’s fresh suit, with nginx in disguise.
Pipelines now modular, workflows anew,
Test runners updated, release notes in view.
Version 9.0.3 shines, so bright and so keen—
A rabbit’s delight for the best you’ve seen!
🐇✨


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 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

codecov bot commented May 25, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 100.00%. Comparing base (764de7b) to head (49e8e56).
Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff            @@
##              main       #10   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files            3         3           
  Lines           86        86           
  Branches         2         2           
=========================================
  Hits            86        86           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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 (1)
.docfx/Dockerfile.docfx (1)

11-11: Consider platform consistency across stages

The final stage omits --platform=$BUILDPLATFORM. For clarity and reproducibility, you may want to add the same platform flag or document the intentional difference.

📜 Review details

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

📥 Commits

Reviewing files that changed from the base of the PR and between 764de7b and 49e8e56.

📒 Files selected for processing (6)
  • .docfx/Dockerfile.docfx (1 hunks)
  • .github/workflows/pipelines.yml (2 hunks)
  • .nuget/Codebelt.Extensions.AwsSignature4/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)

⏰ Context from checks skipped due to timeout of 90000ms (1)
  • GitHub Check: call-test (windows-2022, Debug) / 🧪 Test
🔇 Additional comments (10)
Directory.Packages.props (2)

6-9: Approve dependency version upgrades

The updated versions for Codebelt.Extensions.Xunit.App, Cuemon.AspNetCore.Authentication, Cuemon.Security.Cryptography, and Microsoft.NET.Test.Sdk correctly align with the changelog and PR objectives.


15-15: Approve xunit.runner.visualstudio update

Bumping xunit.runner.visualstudio to 3.1.0 is consistent with the other test framework components.

.docfx/Dockerfile.docfx (1)

1-4: Ensure Docker BuildKit support

Adding --platform=$BUILDPLATFORM for the base and build stages requires Docker BuildKit. Please verify that both local and CI/CD build environments enable BuildKit; otherwise these flags may be ignored or cause build failures.

CHANGELOG.md (1)

10-12: Approve new changelog entry

The 9.0.3 section follows the Keep a Changelog format and accurately summarizes the service update focused on package dependencies.

testenvironments.json (1)

12-12: Approve updated test Docker image

The Docker-Ubuntu environment now uses gimlichael/ubuntu-testrunner:net8.0.409-9.0.300, which aligns with the upgraded .NET 8/.NET 9 dependencies.

.nuget/Codebelt.Extensions.AwsSignature4/PackageReleaseNotes.txt (1)

1-6: Approve release notes for 9.0.3

The new Version 9.0.3 entry clearly states availability for .NET 8/.NET 9 and specifies the precise dependency upgrade details, matching the overall PR scope.

.github/workflows/pipelines.yml (4)

26-34: Refactor build job to reusable workflow: verify inputs and matrix support

The build job now calls codebeltnet/jobs-dotnet-build/.github/workflows/default.yml@v1 with a strategy matrix and passes in configuration and strong-name-key-filename. This correctly removes inline steps, but please confirm that the reusable workflow you’re invoking supports:

  • A strategy.matrix.configuration input
  • The strong-name-key-filename parameter

If those inputs aren’t declared in the reusable workflow’s workflow_call, the build will fail.


38-47: Modular pack job: ensure correct input propagation

You’ve streamlined the pack job to use codebeltnet/jobs-dotnet-pack/.github/workflows/default.yml@v1, feeding it configuration, upload-packed-artifact, and version (from build outputs). Verify that:

  • upload-packed-artifact: true is accepted as a boolean input
  • The version value from needs.build.outputs.version is properly declared in the reusable workflow

This ensures your artifacts are published as expected.


49-60: Use reusable test workflow: validate OS matrix and build-switches

The test job now invokes codebeltnet/jobs-dotnet-test/.github/workflows/default.yml@v1 with a matrix over os and configuration, passing runs-on and build-switches. Please confirm that:

  • The reusable test workflow declares runs-on as an input and uses it for its own runner
  • The build-switches: -p:SkipSignAssembly=true string is applied correctly

Ensure the downstream workflow signature matches these inputs.


90-91: Deploy stage refactored to jobs-nuget-push reusable workflow

The deploy job’s uses was updated to codebeltnet/jobs-nuget-push/.github/workflows/default.yml@v1, and its needs list was expanded. Confirm that the new workflow:

  • Defines version in its workflow_call inputs
  • Properly sequences after all listed jobs (build, pack, test, sonarcloud, codecov, codeql)

This will prevent any missing dependency issues when pushing to NuGet.

Copy link

@gimlichael gimlichael merged commit 4abe015 into main May 25, 2025
17 checks passed
@gimlichael gimlichael deleted the v9.0.3/package-maintenance branch May 25, 2025 20:55
@coderabbitai coderabbitai bot mentioned this pull request Jun 16, 2025
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.

1 participant