Developer Walkthrough
Difference from the Developer Onboarding Guide
This document is more of a step-by-step walk-through of getting the Casper pipeline set up and syncing between an eLMIS and a v3 system. It also gives a tutorial of how to create a new and add to a transformation in NiFi.
Determine Topology and Provision Resources
Lay out the topology for all of the pieces of the Casper architecture. For a developer with a powerful development machine, it is possible to run all of the pieces of the architecture on the same computer. However, a more likely configuration is to have at least two separate machines, generally dividing the major components equally; eLMIS and the pipeline for one, and v3 with the reporting stack for the other.
Stand up eLMIS
It is assumed there already exists a source system (i.e. eLMIS) deployed on a server. If not, a Gitlab repo (openlmis/casper-elmis) has been created to facilitate deploying an eLMIS server. It uses demo data from the Docker image openlmis/demo-data:casper, which is backed by the files here.
Install and Configure Debezium on eLMIS Postgres Database
Stand up OpenLMIS v3
Stand up OpenLMIS v3 Reporting Stack
Load Reference Data into eLMIS and v3
Configure Pipeline Settings
OpenLMIS: the global initiative for powerful LMIS software