This guide will help you set up the repository in your organisation, create a fork, set up deployment pipelines, add Liquid templates for your data-type, and integrate with the Healthcare Data Exchange.
You will have to create a fork of this repository for your organisation. Below are the steps to do so depending on whether you use Github or Azure DevOps.
Please note that the below guidance is for deploying the Healthcare Data Exchange in your organisation. If you are looking to contribute to the original repository, please refer to the contribution guidelines.
- Navigate to the Healthcare Data Exchange repository
- Click on the
Fork
button on the top right corner of the page. - Select your organisation as the destination for the fork. More detailed instructions at the fork a repo guide.
- Once the fork is complete, you will be redirected to your forked repository.
- Clone the repository to your local machine.
- Please ensure that you create a separate branch for your changes. We recommend using the
development
branch for your changes (or any branch name of your preference). We usemain
branch only to sync back the changes from the upstream repository. - You can now start making changes to the codebase.
- To keep your fork up to date with the original repository, you can follow the steps at syncing a fork guide.
- To contribute back to the original repository, please refer to the contribution guidelines.
- Navigate to the Healthcare Data Exchange repository
- Click on the
Fork
button on the top right corner of the page. - Select your organisation as the destination for the fork. More detailed instructions are available at setting a fork in Azure DevOps.
- Once the fork is complete, you will be redirected to your forked repository in Azure DevOps.
- Clone the repository to your local machine.
- Please ensure that you create a separate branch for your changes. We recommend using the
development
branch for your changes (or any branch name of your preference). We usemain
only to sync back the changes from the upstream repository. - You can now start making changes to the codebase.
- To keep your fork up to date with the original repository on Github, you can follow the guide for syncing fork in Azure DevOps.
- To contribute back to the original repository, please refer to the contribution guidelines.
graph LR;
healthcare-data-exchange-main-branch[healthcare-data-exchange main branch]-->|create a fork|YourFork-main-branch[YourFork main branch];
YourFork-main-branch[YourFork main branch]-->YourFork-development-branch[YourFork development branch];
healthcare-data-exchange-main-branch-->|sync the repository|YourFork-main-branch;
YourFork-feature1[YourFork feature-branch-1]-->YourFork-development-branch[YourFork development branch];
YourFork-feature2[YourFork feature-branch-2]-->YourFork-development-branch[YourFork development branch];
YourFork-feature3[YourFork feature-branch-3]-->YourFork-development-branch[YourFork development branch];
TBD
- The first step in Azure DevOps to run pipeline would be to create a
Azure Service Principal
for yourAzure DevOps pipeline
. Here are the steps to create the Azure Service Principal. - The next step would be to create a
Service Connection
in Azure DevOps. ThisService Connection
will be used to authenticate the pipeline execution. - The detailed steps are present on the Azure documentation for managing service connections in Azure DevOps.
- As part of the forked repository, you will get the
.github/workflows
folder in the repository. bvt.yaml
defines thebvt
steps. You can modify the steps as per your requirements.- The pipeline uses
Azure Container Registry
to store theliquid templates
against which thetemplate tests
are run. - You can modify
acr_name
as per your configurations.
- As part of the forked repository, you will get the
Pipelines
section in Azure DevOps under the.pipelines
folder. templates/bvt.yaml
defines thebvt
steps. You can modify the steps as per your requirements.- The pipeline uses
Azure Container Registry
to store theliquid templates
against which thetemplate tests
are run. - You can modify
ACR_NAME
as per your configurations.
- Navigate to the
.github/workflows
folder in the repository. - Refer to the existing workflows to create a new workflow for your organisation.
- Navigate to the
Pipelines
section in Azure DevOps. - Create a new pipeline or reuse existing one, and select the repository you forked. Refer to Azure DevOps Pipelines for more information.
- Save and run the pipeline.
You will have to integrate with the source of the data you want to ingest into the Healthcare Data Exchange. A detailed guide is available at source integration guide.
Healthcare Data Exchange repository uses Liquid templates to transform data from the source system to the FHIR format. You will need to create a Liquid template for your data-type. Please refer to the existing templates in the templates
folder for existing liquid templates.
Once your repository is setup within your organisation, you can start integrating with the Healthcare Data Exchange. Here is the detailed integration guide for integrating with the Healthcare Data Exchange.