How to uninstall the Sitemap Plugin

Through the Essentials tool it is possible to install various plugins. Once these are installed though how can one remove them if they are no longer needed?

In my case the project has outgrown the capabilities of the provided Sitemap Plugin which was originally installed through Essentials so an alternative has been stood up in it’s place. Now it’s time to remove the plugin so I first looked at the Essentials tool to see if there was an uninstall feature but no, it doesn’t look like that is an option.

Next I noticed that under the Changes made by this feature link that the following details are listed.

Add Maven dependency org.onehippo.cms7:hippo-plugin-sitemap-hcm-site to module ‘hcm-hst-dependencies’.
Add Maven dependency org.onehippo.cms7:hippo-plugin-sitemap-component to module ‘site-components’.

Based on this I went through all of the modules in the project and removed these two dependencies wherever I found them in pom.xml files.

To ensure that I got rid of any other remnants of the plugin I searched the repository for the term hippo-plugin-sitemap and a few things showed as shown below.

Number of results found: 3

  1. /hcm:hcm/hcm:baseline/hippo-cms/hippo-plugin-sitemap/hippo-plugin-sitemap-content/hcm-module.yaml
  2. /hcm:hcm/hcm:baseline/hippo-cms/hippo-plugin-sitemap
  3. /hcm:hcm/hcm:baseline/hippo-cms/hippo-plugin-sitemap/hippo-plugin-sitemap-content

I noticed that these are all under /hcm:hcm/hcm:baseline which I’ve never had to modify directly; Would doing so be safe? Looking at the explanation on the Bootstrapping documentation page it doesn’t appear to be advisable.

All data under /hcm:hcm should be considered a read-only reference. Any changes to this data outside of bootstrap processing may lead to problematic behavior.

Besides those plugin references I also was able to find this a sitemap item under /hst:hst/hst:configurations/hst:default/hst:sitemap/sitemap.xml which also appears to have been added by this or an older version of the Sitemap Plugin. I’ve added the export view of this node below as a reference.

/sitemap.xml:
  jcr:primaryType: hst:sitemapitem
  hst:componentconfigurationid: hst:components/forge-sitemap-feed
  hst:hiddeninchannelmanager: true

It looks like perhaps another related node under /hst:hst/hst:configurations/hst:default/hst:templates/forge-sitemap-feed.ftl which I’m guessing should also be safe to remove.

/forge-sitemap-feed.ftl:
  jcr:primaryType: hst:template
  hst:script: '<#ftl attributes={"content_type": "application/xml"} />${sitemap}'

Am I missing anything else which would need to be removed or changed in our project to remove Sitemap Plugin?

Hi Jeff,
You doing a good job, removing dependencies and the bootstrapped items manually.
At brxm/sitemap/hcm-site/src/main/resources/hcm-config at brxm-14.7.3 · bloomreach/brxm · GitHub you can see the 5 bootstrapped locations, think you missed out on the components below /hst:hst/hst:configurations/hst:default/hst:components/.

The bootstrapping process supports deleting content nodes with action-lists, see Manage Content, but I’m not sure this works for the HST configs. If so then it should also update the /hcm:hcm part.

HTH
Jeroen

1 Like

config nodes should be deleted if the config isn’t part of the deployment. Action lists are only for content nodes as they are don’t touch otherwise.