- Added ModelConfig model, DB table, etc to keep track of old configs.
- Added checksum calculations to keep track of each configReload
iteration. This calculation reads all the directories and files
in a deterministic order and computes checksum, which should remain
same for given config on any platform.
- The checksum is stored in the DeployDB app object as well Flow object
in order to associate them with the given iteration of config.
- On the subsequent Flow/Deployment transitions, if checksum from the
Flow matches with that in the App object, then in-memory (i.e. registry)
Model objects are used. Otherwise Model objects are read from the
ModelConfig objects.
- In loadConfigModels, moved code repetitions such as loading from
string, inserting into registry, checksum calculations, etc.
to common function
- Added cucumber and spock tests to validate the code.
References #126