Skip to content

Splitting up repository firely net sdk

Marco Visser edited this page Nov 13, 2020 · 1 revision

Goal

Adding an extra new Git repository (firely-net-common) containing Fhir agnostic projects:

  • Hl7.Fhir.ElementModel
  • Hl7.Fhir.Support
  • Hl7.Fhir.Serialization
  • Hl7.FhirPath

Solution

Using submodules: Git repository firely-net-sdk will only contain the following projects:

  • Hl7.Fhir.Core
  • Hl7.Fhir.Specification
  • Git submodule to firely-net-common

Also to following test projects reside in the repo firely-net-sdk:

  • Hl7.Fhir.Core.Tests
  • Hl7.Fhir.Specification.Tests
  • Hl7.Fhir.Serialization.Tests
  • Hl7.Fhir.ElementModel.Tests
  • Hl7.FhirPath.R4.Tests

You would expect that the last 3 test projects will be in de common repo, but the projects contain Fhir specific version information, so they are for now in the fhir-net-api.

In this solution you can still use project references instead of package references. A checkout of fhir-net-api have still all the source code at one place (a requirement for DevOps).

Consequences:

  • Creating a PR with changes in both repos will result in a PR for both repos. So a separate PR for each repo.

Example

I did a dry-run on my local GitHub account: https://github.com/marcovisserFurore/fhir-net-api Also the common project resides there: https://github.com/marcovisserFurore/fhir-net-foundation (here still called fhir-net-foundation, but will be called firely-net-common.

I would advise you to checkout https://github.com/marcovisserFurore/fhir-net-api and play with it and give your opinion.

Clone this wiki locally