My hippo instance repository is backed by a mysql db. When making changes to FTL files in repository-data/webfiles, and redeploying the cms.war with cargo, the binary webfiles are not changed in the repository. The cms.war however, contains a jar called “myproject-repository-data-webfiles-0.1.0-SNAPSHOT.jar” which has the updated contents.
What am I overlooking here? How does hippo sync these binaries with the repository? What is the mechanism behind it.
When you are developing locally, any change made to the webfiles get instantly synched with your local repo. Do you not see the updated webfiles in cms/console? If these webfiles are large files, you need to change the webfile module settings to allow it to synch larger files perhaps. See the configuration at /hippo:configuration/hippo:modules/webfiles/hippo:moduleconfig
My hippo instance repository is backed by a mysql db. When making changes
to FTL files in repository-data/webfiles, and redeploying the cms.war with
cargo, the binary webfiles are not changed in the repository. The cms.war
however, contains a jar called “myproject-repository-data-webfiles-0.1.0-SNAPSHOT.jar”
which has the updated contents.
What am I overlooking here? How does hippo sync these binaries with the
repository? What is the mechanism behind it.
you are overlooking documentation which is located here:
Changes in repository-data are packaged into a jar which is declared as dependency in cms webapp. On deployment of cms.war to tomcat, this jar is read and repository is bootstrapped with the files in this repository-data jar. Are you sure that the changes you make end up in reposioty-data jar?
Blockquote
If data has been bootstrapped into the repository before the current startup, the repo.bootstrap system property controls the bootstrapping. The following values are supported:
false
No bootstrapping is attempted. Incoming repository data changes are not processed, and the repository data is not changed.
Yes, in v12+ the webfiles bundle is bootstrapped by the config management system, which is disabled when you use repo.bootstrap=false. This would explain why your updated webfiles contents are not being used.
The new configuration management system in v12 is much, much more sophisticated than older versions. It is designed to be safe for production use cases, though of course there may still be undiscovered bugs. At the very least, you’ll need to enable it when deploying new config or webfiles. If you want to set repo.bootstrap=false for other times, that is also supported.