介绍
几个月前,亚伦·克罗斯曼(Aaron Crosman)发布了What I Brought from Drupal to Salesforce。虽然我完成了很多CMS/CRM集成工作,但几年来我一直将Drupal与Salesforce及其相关服务集成在一起。我仍然认为自己是Salesforce开发的新手,我仍在Salesforce Community Sprints等活动中学习open source side of Salesforce。
。如果我确实弄错了,请告诉我,我会更新帖子。
写一系列的另一个原因,强调了Salesforce和Drupal之间的某些相似之处,是回应Jacob Rockowitz最近的帖子whether his Blueprint project that leverages Schema.org had a future。
我在presentation at BADCamp中简要提到了蓝图,但是我想深入研究蓝图以及一些其他功能,开始在“现代Drupal”中成熟,我看到我看到类似的方法在Salesforce中运作良好。
为了保持理智,我将其分为3个部分;
- 项目浏览 - 项目浏览器和AppExchange
- 模式管理 - 蓝图和教育数据体系结构
- 高级配置管理 - 配置补丁Gitlab API和Gearset
项目浏览器和AppExchange
Drupal Association浏览器计划的工作中的UI与Salesforce的AppExchange非常相似(和MetaDeploy,AppExchange,用于开源的AppExchange和Commons支持的Salesforce软件包)。
)视觉上,项目浏览器和AppExchange的UX非常相似。
开箱即用,对于开发人员来说,Project浏览器并不是那么令人兴奋。
因此,我可以在正在构建的应用程序中搜索模块,然后转到Composer到
composer require drupal/[PROJECT NAME]
?为什么有人会为此感到兴奋?
Project浏览器的令人兴奋的部分并未使用它在不同的UX上浏览相同的项目,它可以为特定的用例或基础架构自定义该体验。一个功能,可以为用户提供可以直接在其网站的测试/沙盒版本上安装的项目列表。
我怎么知道?
在CMS方面,我们写了类似于Drupal 7中的科罗拉多大学Project浏览器的东西,我们称为Profile Module Manager11。虽然Colorado.edu站点现在从万神殿的monorepo/custom upstream方法运行,但原始的本地基础架构配对配置文件模块Manager和自定义DevOps解决方案将代码“捆绑”代码添加到网站代码库中。 D7中的Web Express中的Profile Module Manager的用户体验和D10中的定制项目Feed的Project浏览器的用户体验非常相似。
Project浏览器直到可以将其与自动更新计划相结合之前,才真正令人兴奋。这项工作需要作曲家2.3.5或更高版本,许多主机(包括万神殿)尚不支持。
在CRM侧,当浏览包装并单击立即获取免费软件包的时,请提示您根据已注册的帐户注册的实例来安装该软件包使用...或旋转一个新的沙箱以测试此包装。
虽然Drupal的Project浏览器UX旨在与您打算安装软件包的CMS实例一起使用,但不难想象大型,以Drupal的主机或Pantheon(如Accareia或Pantheon)提供定制的项目浏览器feeds列出平台友好/友好/批准的模块。
现代Drupal仍然必须定义一种安装PHP项目要求的前端依赖关系的方法。 Salesforce用Lightning Web Components, their open source Web Component foundation在一定程度上解决此问题。
虽然#2873160周围有一些牵引力来使用NodeJS installer for Composer和#3340712将单个目录组件纳入核心,但这仍然是一个挑战。
也必须认识到,您可以通过不同的Salesforce项目浏览服务安装的大多数软件包不是免费的或开源的。在AppExchange和MetainStall Services之间,您会发现4种不同类型的软件包。
- Free, Open and Transparently Maintained on GitHub-峰会活动计划主要由圣托马斯大学https://github.com/SFDO-Community/Summit-Events-App的工作人员维护,这是一项很好的示例代码。
- Free, maintain by Salesforce-教育数据体系结构(EDA)就是一个很好的例子。我将在第2部分中写更多有关EDA的信息。
- Free, Closed Source-您会发现免费损失领导者产品的混合,具有有限的版本,带有付费升级,以及需要服务订阅的免费软件包,但是这些软件包的来源无法修改。
- Paid, Closed Source-包装收费的75%。大多数使用每个许可用户/每月型号。有些提供免费试用。
付费插件在WordPress生态系统中更为常见,但基础的plugin code is considered a derivative of WordPress where distribution triggers the GPL-2.0 or later licensing requirement。
我认为这将变得有趣的地方是SaaS产品中更多商业的Drupal包裹的潜力。我们已经看到一些大型主机为在其基础架构上托管的网站(例如Acquia Site Studio)托管的网站收取了一些大型主机费用。我们可能会看到更多的小组利用GPL SaaS Loophole,使客户能够从定制项目浏览器中安装商业模块和主题。
只要最终用户通过网络与您的软件进行交互,并且您可以控制软件正在运行的硬件 /基础架构,这不被视为发行。< / p>
虽然与传统的纯GPL Drupal网站不同,但在看到Salesforce的竞争包装质量之后,我个人认为一级商业,封闭的源模块对Drupal都有利。