Skip to content

feat: central package management#1800

Merged
MWClayson-NHS merged 74 commits intomainfrom
feat/central-package-management
Feb 19, 2026
Merged

feat: central package management#1800
MWClayson-NHS merged 74 commits intomainfrom
feat/central-package-management

Conversation

@MWClayson-NHS
Copy link
Copy Markdown
Contributor

@MWClayson-NHS MWClayson-NHS commented Jan 5, 2026

Description

These are changes to enable Central Package Management across the whole Cohort Manager Project.
Additionally to implement these changes we were required to create base images that have access to the following files

  • Directory.Build.props
  • Directory.Build.targets
  • Directory.Packages.props

Base Image Process

  • Created two new Docker build Files (Dockerfile.dotnet.base, Dockerfile.function.base) These will ensure the above files are copied over so the function is built correctly
  • Created new CI/CD Step to build base images and push them to GHCR
  • Updated all other docker images to use the base images.

CPM Changes

  • Create root Directory.Packages.props file with versions of all nuget packages used across the whole product
  • Removed Versions from all *.csproj files
  • Created Directory.Build.props file to ensure the intermediary build step for functions does not error due to versions in the WorkerExtensions.csproj Files
  • Created Directory.Build.Targets to prevent Worker Extension Files from being created when unit tests are being run / built

Context

This change solves two problems

  • Package Drift, This change centralises the versioning of nuget Packages used across the project meaning that all packages will now be all aligned by version.
  • Pre-building Shared Libraries should improve the performance of the ci/cd and local build process.

Type of changes

  • Refactoring (non-breaking change)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would change existing functionality)
  • Bug fix (non-breaking change which fixes an issue)

Checklist

  • I am familiar with the contributing guidelines
  • I have followed the code style of the project
  • I have added tests to cover my changes
  • I have updated the documentation accordingly
  • This PR is a result of pair or mob programming

Sensitive Information Declaration

To ensure the utmost confidentiality and protect your and others privacy, we kindly ask you to NOT including PII (Personal Identifiable Information) / PID (Personal Identifiable Data) or any other sensitive data in this PR (Pull Request) and the codebase changes. We will remove any PR that do contain any sensitive information. We really appreciate your cooperation in this matter.

  • I confirm that neither PII/PID nor sensitive data are included in this PR and the codebase changes.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jan 5, 2026

Unit Test Results

✔️ Tests 975 / 975 - passed in 69.4s
📝 Coverage 47.07%
📏 4756 / 10412 lines covered 🌿 1167 / 2172 branches covered
🔍 click here for more details

✏️ updated for commit 8c106cd

Comment thread .github/workflows/cicd-1-pull-request.yaml Outdated
@MWClayson-NHS MWClayson-NHS marked this pull request as ready for review January 13, 2026 15:04
Comment thread .github/workflows/stage-3-build-images.yaml Outdated
@rfk-nc rfk-nc marked this pull request as draft January 13, 2026 16:13
Comment thread scripts/deployment/check-base-image-changes.sh
Comment thread .github/workflows/stage-3-build-images.yaml
@stephhou stephhou added the Non-functional change A change that does not change any functions. Mainly config or database changes label Jan 14, 2026
Comment thread .github/workflows/stage-3-build-images.yaml
@stephhou stephhou added Deployment 1.1.0 Release scheduled for February 2026 merge in isolation To be merged and tested alone priority after freeze To be one of the first PRs merged after a code freeze and removed Deployment 1.0.6 priority after freeze To be one of the first PRs merged after a code freeze labels Feb 5, 2026
@MWClayson-NHS MWClayson-NHS marked this pull request as ready for review February 18, 2026 12:44
Copy link
Copy Markdown
Contributor

@MacMur85 MacMur85 left a comment

Choose a reason for hiding this comment

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

Approved

@sonarqubecloud
Copy link
Copy Markdown

@MWClayson-NHS MWClayson-NHS added this pull request to the merge queue Feb 19, 2026
Merged via the queue into main with commit e46c648 Feb 19, 2026
68 checks passed
@MWClayson-NHS MWClayson-NHS deleted the feat/central-package-management branch February 19, 2026 10:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Deployment 1.1.0 Release scheduled for February 2026 merge in isolation To be merged and tested alone Non-functional change A change that does not change any functions. Mainly config or database changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants