我已经创建了一个Symfony项目,将在其他公司复制。
我想为其他公司简化这个项目的安装,使用像"composer create- project“这样的命令,同时询问将根据他们的答案修改.env
的问题。
我怎样才能用Composer做到这一点呢?
发布于 2021-09-02 02:36:56
composer create-project
只需克隆包的VCS存储库,然后执行composer install
。(Docs)。
它没有其他的魔力。
因此,您只需使用您的自定义composer.json
创建一个包,声明用于引导项目的任何依赖项:
{
"require": {
"foo/bar": "^1.1",
"fizz/buzz": "^3.0"
}
}
要创建处理用户问题和进行其他响应的逻辑(例如,向.env
添加内容),您可以利用Package Events。特别是post-create-project-cmd
。
因此,您需要向骨架composer.json
添加类似以下内容的内容:
{
"require": {
"foo/bar": "^1.1",
"fizz/buzz": "^3.0"
},
"scripts":
{
"post-create-project-cmd": [
"php bin/your_custom_setup_script.php"
]
}
}
阅读有关设置脚本here的更多信息。
自定义脚本的实际编码必须由您自己完成。它可以做任何你需要的事情来帮助引导安装(更新配置、创建目录、清除缓存等)。
https://stackoverflow.com/questions/69028116
复制