space48/magento2-environment-configuration

控制台命令,用于设置指定环境的 Magento 配置

1.3.1 2022-05-09 13:52 UTC

This package is auto-updated.

Last update: 2024-09-09 18:43:56 UTC


README

为 Magento 2 提供无冗余的 PHP 配置。

此包主要用于开发人员使用,您的设置可能不需要它,请在使用前查阅 Magento 2 文档 https://devdocs.magento.com/guides/v2.3/config-guide/deployment/

不同的环境需要不同的配置,用于描述环境的词语在 Magento 代码库中通常保持一致(如 'production', 'staging' 等)。使用这些词语,我们可以将这些值存储在代码中,并通过单条命令在部署期间或首次设置项目时设置这些值。

请注意,此模块存储和消耗的配置值仅为方便起见,不应用于处理密码、密钥或任何敏感信息。如果需要存储此类信息,请手动操作或使用 env.php 或环境变量。

安装

composer require space48/magento2-environment-configuration
php bin/magento module:enable Space48_EnvironmentConfiguration

使用

日常使用只需运行命令

php bin/magento environment-configuration:apply local|development|staging|production

设置包或添加新配置值时,请编辑或创建一个位于 app/etc/environment-configuration.php 的文件,如下所示

<?php

use Space48\EnvironmentConfiguration\ConfigValue;
use Space48\EnvironmentConfiguration\ConfigValueSet;
use Space48\EnvironmentConfiguration\Environment;
use Space48\EnvironmentConfiguration\EnvironmentConfigValues;
use Space48\EnvironmentConfiguration\Scope;

return EnvironmentConfigValues::create()
    ->withConfigValuesForEnvironment(
        $values = ConfigValueSet::of([
            new ConfigValue('example/config/path', 'example config value')
        ]),
        $environment = Environment::LOCAL)
    ->withConfigValuesForEnvironment(
        $values = ConfigValueSet::of([
            (new ConfigValue('example/config/path', 'example website specific value'))
                ->withScope(
                    new Scope('websites', 3)
                )
        ]),
        $environment = Environment::PRODUCTION);

贡献

如果您发现错误,请提交问题或编写测试,您可以使用 composer 脚本运行测试

composer test