我有一个default
配置文件,其中包含一些升级步骤(1.0.0-> 1.0.3)。
这是它的metadata.xml
:
<?xml version="1.0"?>
<metadata>
<version>1.0.3</version>
<dependencies>
<dependency>profile-plone.app.dexterity:default</dependency>
</dependencies>
</metadata>
我添加了一个uninstall
配置文件,该配置文件删除了默认配置文件中添加的自定义目录,等等。
因此,我可以停用我的加载项,将其激活,然后再次运行升级程序,所有配置都将重新出现。
如何在卸载时将概要文件版本设置为0.0.1之类,以便摆脱在重新激活附加组件时再次手动运行升级步骤的问题?我需要的是:使用“停用+激活”插件可以完成所有配置,而无需进行portal_setup升级,显示旧的重新运行...
答案 0 :(得分:1)
解决了在寄存器配置文件中添加post_handler
(还简化了升级步骤-现在开始,元数据版本:1.1):
<genericsetup:registerProfile
name="default"
title="my.addon"
directory="profiles/default"
description="Installs the package."
provides="Products.GenericSetup.interfaces.EXTENSION"
post_handler=".upgrades.evolve11.run"
/>
在upgrades.evolve11.run
中,我有用于配置目录的代码。因此,重新安装附加组件后,所有必需的操作均已完成。