Liza is a data collection, validation, and processing framework for JavaScript.
The Liza Data Collection Framework—"Liza" for short—is an effort to clean up, formalize, and expand upon a framework that was developed at RT Specialty / LoVullo for collecting, validating, and processing large amounts of user input for insurance quoting.
If your distribution does not contain a `configure' file in the project root, then you likely have the sources as committed to the project repository; you may generate the script by issuing the following command:
./autogen.sh
You may then see ./configure --help
for more information.
If configure
is not available, see the section "Configuring" above.
First time setup:
./bootstrap
Subsequent builds:
make
make format # run auto-format with prettier
make fix # attempt to auto-fix linting errors
See DELTA-PROCESSOR-README.md
for more
information on the delta processor daemon.
See DULLAHAN-README.md
for more information on the
Dullahan daemon.
Compiled documentation for the latest release is available via our GitLab mirror, which uses the same build pipeline as we do on our internal GitLab instance. Available formats are:
For more information on hacking Liza and publishing to npm, see
HACKING
.
Liza is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
The liza server is licensed differently: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
The full licenses are available in COPYING
and COPYING.AGPL
.
To be able to develop out of ~/gitrepos/rating-fw
and
~/gitrepos/liza
, you must use symlinks in the Connector repository:
# Ensure that liza is built properly
# create symlinks in ~/gitrepos/connector/node_modules
$ cd node_modules
$ rm -rf rating-fw
$ rm -rf liza
$ ln -s ~/gitrepos/rating-fw rating-fw
$ ln -s ~/gitrepos/liza liza
NODE_SERVER="$(pwd)/node_modules/liza/bin/server"
You should now be able to continue running the Quote Server as before while
developing out of ~/gitrepos/
.
For more information about developing and debugging liza, please visit [Confluence]: https://rsgcorp.atlassian.net/wiki/x/J4Cf-/
Should a Key Encryption Key (KEK) be leaked, it must be blacklisted to prevent it from being used to encrypt additional information.
To do this, a configuration file, located in rating-fw, must be updated with the offending key. Note that blacklisted keys can still be used for decryption to allow for key rotation.
e.g.
"blacklistedKeks": [
"leaked_kek:1"
]
Where leaked_kek
is the name of the secret in Secret Manager
and 1
is the version number.
NB: There are multiple environments in this directory; make sure you update the correct environment corresponding to the leaked KEK.