ZenPack的开发似乎涉及到各种持久状态的创建。有一些模型类明确表示持久状态。有一些与模型对象关联的皮肤。有持久类的组织者和实例(数据源、图表等)。
考虑到在开发过程中,很多事情在正确完成之前都会做错,并且考虑到加载做错事情的 ZenPack 会对加载到的 Zenoss 实例产生持久的后果,并且这些后果很难撤销,ZenPack 开发的常用方法是什么?
最佳答案
我对 Zenoss 具体一无所知,但这种情况对于任何具有某种形式的持久配置的系统都很常见,例如 Zope 和 Plone。
工作流程是创建一个可以删除和复制的测试环境,但可以部分或全部删除和复制。例如,对于典型的 Plone 站点,您有一个 buildout它允许您复制开发环境,包括所有依赖项。然后,在您开发的扩展模块中,您有一个脚本/函数,允许您根据需要设置持久配置。
这使您能够轻松地重新创建所需的状态。
您还有工作流程“阶段”。开发,通常在每个开发人员的本地计算机上完成。登台/测试,在测试服务器上完成。这是通过将生产计算机的持久状态复制到登台计算机,然后运行任何设置/升级脚本并确保一切正常来完成的。最后升级生产服务器。
关于python - Zenoss ZenPack 开发的典型工作流程是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1573166/