Clean Versions
This script cleans all JCR versions from a specific workspace in Magnolia
import info.magnolia.cms.core.version.VersionManager;
import info.magnolia.context.MgnlContext;
import info.magnolia.jcr.util.NodeUtil;
import info.magnolia.jcr.util.NodeVisitor;
import javax.jcr.Session;
// specify which website you want to clean
String path = "/";
// specify which workspace you want to clean
String workspace = "website";
VersionManager vm = VersionManager.getInstance();
Session session = MgnlContext.getJCRSession(workspace);
javax.jcr.Node root =session.getNode(path);
visitor = { node ->
println(node.getPath())
vm.removeVersionHistory(node);
}
NodeUtil.visit(root, visitor as NodeVisitor);
session.save();
Contact the author