我们目前正在研究Salesforce DX项目的体系结构。我们已经拥有广泛的现有自定义代码库,并计划将它们转换为多个Unlocked Packages,以使所有组件更加模块化等。当然,并非所有组件都需要打包,某些功能将保持未打包状态。
问题是:这应该是一个单个项目(内部有多个软件包目录,并且具有单个Git存储库)还是每个功能一个项目更可取(多个Git回购)?您将如何管理包装和未包装物品之间的依赖关系?
能请你指教吗?
答案 0 :(得分:0)
Salesforce CLI可以在任何地方运行。但是在Salesforce项目目录的上下文中执行某些命令是必需的。这包括执行打包,将代码部署到组织的所有命令,所有这些命令都会驱动您可能使用的任何CI / CD进程。
正如我想象的那样,尝试将CI流程分布在多个项目中,每个项目都有自己的项目文件夹,这似乎会增加不必要的复杂性。
从根本上讲,未锁定的程序包旨在共享一个Salesforce项目。因此,除非您找到其他原因,否则朝正确的方向前进是正确的。
Salesforce开发人员推广团队维护一个sample app,该video是使用称为“ Easy Spaces”的多包模型构建的。我建议您查看那里的sfdx-package.json
文件,以了解如何安排和识别程序包依赖性。
您也许可以推断出一些方法来相应地组织项目中的代码。
对于一个答案来说,如何做出所有这些决定实在太多了。但是这位youtube site是一位客户开发团队负责人,分享了他们如何重新构造代码库以使用解锁的软件包。