yannoff/composer-dotenv-handler

Composer 脚本,根据 .env.dist 模板生成 .env 文件

1.2.4 2021-10-06 15:01 UTC

This package is auto-updated.

Last update: 2024-09-21 02:41:25 UTC


README

Latest Stable Version Total Downloads License

Composer 脚本,用于处理 .env 文件维护,基于流行的 incenteev/composer-parameter-handler 包的概念。

使用方法

首先必须引入这个包

$ composer require yannoff/composer-dotenv-handler

然后,根据以下示例设置你的 composer.json

...
    "scripts": {
        "post-install-cmd": "Yannoff\\DotenvHandler\\ScriptHandler::updateEnvFile"
    }
...

高级选项

选项可以通过 composer.json 的 extra 部分传递

    "extra": {
        "yannoff-dotenv-handler": {
            // options here
        }
    }

可用选项

Symfony Flex 行为

截至 2018 年 11 月,Symfony 团队决定 彻底改变 symfony 应用程序中处理 dotenv 文件的方式。

一种 局部 临时解决方案 是修改 composer.json 的 extra 部分,如下所示

    "extra": {
        "yannoff-dotenv-handler": {
            "file": ".env.local",
            "dist-file": ".env"
        }
    }

无论如何,这不是一个可接受的解决方案,实际上,dotenv 文件名可能因部署环境而异(测试、预发布、生产等):不能直接提交 composer.json。

因此,这里引入了行为选项

    "extra": {
        "yannoff-dotenv-handler": {
            "behavior": "flex"
        }
    }

flex 行为模式 下,脚本将根据运行时环境变量 APP_ENVENV(按此顺序优先)自动构建 dotenv 文件名(如果未设置,则使用默认值 local)。

例如,在终端中执行以下命令

$ /usr/bin/env ENV=staging composer install

将得到以下配置值

  • dist-file : .env
  • file : .env.staging

许可证

MIT 许可证 下许可。