我们正在使用git
,composer
,目前正在为自动TYPO3 CMS部署实施DDEV
。但是有些手动流程我不知道如何实现自动化?
PackageStates.php
是TYPO3跟踪安装的扩展程序的位置,因此应PackageStates.php
跟踪git
或者是否应安装ext
和sysext
文件夹中存在的所有扩展程序,并完全删除那些我们不想要的Helmut Hummel was suggesting he's already doing?Extensions
然后选择特定扩展程序来设置的?答案 0 :(得分:2)
以下是一些建议:
INCLUDE_TYPOSCRIPT
将所需的内容/设置文件添加到您的网站扩展程序,即可避免通过TYPO3后端的往返。它不是自动化的,但可确保原子更改并轻松移除而无需单击。当然,您需要在后端指向您的站点扩展名的模板记录的容器和设置字段中添加一个INCLUDE_TYPOSCRIPT
。require
您真正需要的包。如果您将TYPO3 Console命令install:generatepackagestates
添加为post-autoload-dump
script,则可以自动更新PackageStates.php
。如果您在部署中执行此步骤,则大多数情况下您甚至不需要再将此文件添加到存储库中。$GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']
中作为序列化字符串,因此您可以根据需要进行设置,并在必要时对现有配置进行反序列化。您可以在AdditionalConfiguration.php
中执行此操作,以保持代码更改配置。请注意$GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']
为deprecated with TYPO3v9,并替换为普通数组和适当的API。答案 1 :(得分:1)
要“包含静态”,您始终必须在数据库中执行更改。添加的模板保存在sys_template表中。因此,您可以创建一个sh脚本,以便在每次部署时仅导入此表。
如果您没有使用composer来安装扩展,可以在git中添加PackageStates。当我没有使用作曲家进行扩展时,我正在这样做。
答案 2 :(得分:1)
关于1.)你可以使用钩子`$ GLOBALS [' TYPO3_CONF_VARS'] [' SC_OPTIONS'] [' Core / TypoScript / TemplateService'] [ ' runThroughTemplatesPostProcessing&#39]。例如,看看https://github.com/CMSExperts/bolt/blob/master/Classes/TypoScript/TemplateService.php