Remove Camunda
Camunda Removal for Project Review Management
Since version 14.4 Camunda BPM engine is no longer used to manage the review state of projects. Upon first deployment of the CMS all externally managed review states will automatically be migrated into the repository. After migration has finished the Camunda web application is no longer needed and should not be deployed anymore.
Pre-Deployment Verification
- Prerequisite for the automigration of review state is that all projects in review have external state. Verify that all projects in review are in the correct state before starting. To minimize risk either cancel or complete pending reviews if possible.
After this verification, deploy the upgraded project.
Post-Deployment Steps
Remove BPM Web Application
-
Remove bpm.war from the distribution. Edit the file src/main/assembly/webapps-component.xml and remove the dependencySets element that contains the bpm.war. See Remove bpm.war for the Git diff.
-
Remove wpm datasource. Edit the file conf/context.xml and remove the jdbc/wpmDS resource. See Remove wpmDS for the Git diff.
After these changes you can generate a new distribution that will no longer contain the bpm.war. It will also no longer connect to the Camunda database.
Redeploy the New Distribution
After creating the new distribution you can deploy it.
Post-Deployment Cleanup for On-Premise Customers
As a final step you can clean up the database tables used by Camunda.
Make a backup of the Camunda database if you need to preserve history (e.g. for audit purposes). You can now safely delete the database tables. A list of all tables can be found at Camunda Database tables documentation.
Troubleshooting
If you see the the following message being logged as an error
Cannot continue with migration due to missing external state.
then one or more projects refer to non-existing external processes. It means that the pre-deployment verification has not been executed. Yo will have to restore to the old situation and make sure that all projects in review have external process state.
If you see the following message being logged as an error
After migration the bpm.war should no longer be deployed. Please undeploy it.
then you forgot to remove the bpm web application. Please follow the instructions in the post-deployment steps.
Appendix: Diffs
Remove bpm.war
--- a/src/main/assembly/webapps-component.xml +++ b/src/main/assembly/webapps-component.xml @@ -12,15 +12,4 @@ <destName>site.war</destName> </file> </files> - <dependencySets> - <dependencySet> - <useProjectArtifact>false</useProjectArtifact> - <outputDirectory>webapps</outputDirectory> - <outputFileNameMapping>bpm.war</outputFileNameMapping> - <scope>provided</scope> - <includes> - <include>com.onehippo.cms7:hippo-addon-wpm-camunda:war</include> - </includes> - </dependencySet> - </dependencySets> -</component>
Remove wpmDS
--- a/conf/context.xml +++ b/conf/context.xml @@ -2,7 +2,6 @@ <Context> <!-- Disable session persistence across Tomcat restarts --> <Manager pathname=""/> - <Resource name="jdbc/wpmDS" auth="Container" type="javax.sql.DataSource" maxTotal="100" maxIdle="10" initialSize="10" maxWaitMillis="10000" testWhileIdle="true" testOnBorrow="false" validationQuery="SELECT 1" timeBetweenEvictionRunsMillis="10000" minEvictableIdleTimeMillis="60000" username="sa" password="" driverClassName="org.h2.Driver" url="jdbc:h2:${repo.path}/wpm/wpm;AUTO_SERVER=TRUE"/> <!-- Change the default repository storage location --> <!-- @@ -20,4 +19,4 @@ <!-- <Parameter name="output-wicketpaths" value="true"/> --> -</Context>
Remove Camunda WAR Dependency and Deployable
--- a/pom.xml +++ b/pom.xml @@ -128,12 +128,6 @@ <artifactId>hippo-enterprise-services</artifactId> <scope>provided</scope> </dependency> - <dependency> - <groupId>com.onehippo.cms7</groupId> - <artifactId>hippo-addon-wpm-camunda</artifactId> - <type>war</type> - <scope>provided</scope> - </dependency> </dependencies> <build> @@ -343,14 +337,6 @@ <context>/essentials</context> </properties> </deployable> - <deployable> - <properties> - <context>/bpm</context> - </properties> - <groupId>com.onehippo.cms7</groupId> - <artifactId>hippo-addon-wpm-camunda</artifactId> - <type>war</type> - </deployable> </deployables> <container> <systemProperties>