Today we distribute the processed datalevin db using an uploaded artifact zip to the github releases, where the backend downloads in the service startup (if it doesn't find the file).
Maybe an better approach would be save the processed database in the resources folder and distribute it as a lib where we could add some extra features, like the datalevin component, database common schemas (malli and datalog) and so on.
The problem with this approach is that we would need to commit the processed database using an CI bot and then generate the uberjar for the lib distribution, but I don't like storing binaries or processed stuff in git.
Today we distribute the processed datalevin db using an uploaded artifact zip to the github releases, where the backend downloads in the service startup (if it doesn't find the file).
Maybe an better approach would be save the processed database in the resources folder and distribute it as a lib where we could add some extra features, like the datalevin component, database common schemas (malli and datalog) and so on.
The problem with this approach is that we would need to commit the processed database using an CI bot and then generate the uberjar for the lib distribution, but I don't like storing binaries or processed stuff in git.