我有一个运行TYPO3的ddev和一个挂钩,该挂钩将auth.json复制到〜/ .composer / auth.json。如果我使用Github的以下配方ddev-contrib/…/cronjob,则只会加载config.cron.yml中的钩子。
如何加载两个钩子。
这是我的代码:
config.yaml
1 APIVersion: v1.12.1
2 name: projectname
3 type: typo3
4 docroot: deployer/current/web
5 php_version: "7.2"
6 webserver_type: nginx-fpm
7 router_http_port: "80"
8 router_https_port: "443"
9 xdebug_enabled: false
10 additional_hostnames: []
11 additional_fqdns: []
12 mariadb_version: "10.2"
13 nfs_mount_enabled: false
14 provider: default
15 use_dns_when_possible: true
16 timezone: ""
17 hooks:
18 post-start:
19 - exec: echo Copying Credentials…
20 - exec: mkdir -p /home/montea/.composer
21 - exec: cp /var/www/html/auth.json /home/montea/.composer/auth.json
config.cron.yml
1 webimage_extra_packages: [cron]
2 # INFO: replace montea with your local user
3
4 hooks:
5 post-start:
6 - exec: echo '*/1 * * * * montea TYPO3_CONTEXT=Development /usr/bin/php /var/www/html/public/typo3/sysext/core/bin/typo3 scheduler:run' | sudo tee -a /etc/cron.d/typo3
7 - exec: sudo chmod 0600 /etc/cron.d/typo3 && sudo service cron star
如果重新启动项目,则只能从config.cron.yml中看到钩子
我可以将exec-parts从config.cron.yml移到config.yaml,但是第一行webimage_extra_packages: [cron]
是什么?
您在config.cron.yaml中的启动后钩子是overriding在config.yaml中提供的启动后钩子,这就是预期的样子。
您将需要将钩子(或所有内容)从config.cron.yaml移到config.yaml。
您可以使用ddev debug configyaml
查看最终的config.yaml,它会显示最终的组合版本。