MauroDataMapper-NHSD / mdm-plugin-nhs-data-dictionary

Mauro Core Plugin for the NHS Data Dictionary
Apache License 2.0
0 stars 0 forks source link

mdm-plugin-nhs-data-dictionary

Repository holding the Mauro plugin to manage operations on the NHS Data Dictionary when contained and modelled in Mauro. This handles:

Branch Build Status
main Build Status
develop Build Status

This plugin is one part of the whole Mauro solution to support the NHS Data Dictionary authoring and publication. The full solution comprises of:

Documentation

Apart from this README, which provides the basic setup required for development, further documentation can be found under documentation folder:

Requirements

All of the above can be installed and easily maintained by using SDKMAN!.

Knowledge of Grails and how Mauro plugins are developed will be required to develop these tools. These may be useful for reference:

Setup for development

The following instructions explain how to setup your development environment to work with this plugin.

Configure mdm-application-build

The mdm-plugin-nhs-data-dictionary Grails plugin needs to be loaded into a full Mauro backend instance. Use mdm-application-build for this as only changes to mdm-plugin-nhs-data-dictionary are required - the core Mauro libraries should not need changing.

Clone the mdm-application-build repo, then modify the build.gradle file to include the mdm-plugin-nhs-data-dictionary plugin:

// Update the grails > plugins list of dependencies...
grails {
    plugins {
        // Other plugin references here...

        runtimeOnly 'uk.ac.ox.softeng.maurodatamapper.plugins:mdm-plugin-nhs-data-dictionary:2.0.0-SNAPSHOT'
    }
}

Publish to Maven local

mdm-application-build is configured to fetch library dependencies from a package dependency source using Maven. Usually published dependencies will come from Artefactory, but for development it will also inspect your local Maven folder - found in ~/.m2/repository.

In this repo, run gradle :mdm-plugin-nhs-data-dictionary:publishToMavenLocal to publish latest changes to your local Maven folder.

Run mdm-application-build

In the mdm-application-build repo, you can now run gradle bootRun to run a full Mauro instance on your machine and host from http://localhost:8080. If the build.gradle file was configured correctly, the log file should say that the mdm-plugin-nhs-data-dictionary plugin was loaded successfully into the Grails application.

Run user interfaces

You will want to inspect the results in Mauro using the user interfaces, which will be easier than manual API requests.

Clone the mdm-ui repo, then run:

npm install
npm start

This will host the Mauro frontend locally on http://localhost:4200.

Finally, clone the nhsd-data-dictionary-orchestration repo, then run:

npm install
npm start

This will host the Mauro frontend locally on http://localhost:4201.