bitnetic/maturity

该软件包最新版本(0.1.3)没有可用的许可信息。

基于Laravel的软件成熟度功能标志配置包

安装: 511

依赖项: 0

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 0

公开问题: 0

类型:软件包

0.1.3 2018-09-13 08:08 UTC

This package is not auto-updated.

Last update: 2024-09-28 10:11:13 UTC


README

Laravel自带.env文件,让您可以根据应用程序运行的环境灵活配置和调整其行为。

然而,特定环境是更技术的一面,这通常不是决定功能是否可用的驱动因素。无论是本地docker还是测试环境,都可能存在您不希望您的软件访问关键第三方API、应用严格的业务规则、存储某些数据或以不同于平常的方式行事的情况。

采用基于成熟度的方法,您可以将这种行为打包到几个级别中,并将其应用于您将要设置的不同技术环境。

如何安装

只需通过composer引入该包

$ composer install bitnetic/maturity "0.1.*"

成熟度包附带一个名为config/maturity.php的配置文件。此文件使用vendor:publish命令部署到中央Laravel配置目录

$ php artisan vendor:publish --tag=config

如何使用

插入您希望的功能标志

$ vi config/maturity.php

设置您计划的环境的成熟度,例如

$ echo "MATURITY=DEV" >> .env
$ echo "MATURITY=PROD" >> .env.aws

在您的业务代码中检查和使用功能标志,例如

if (Maturity::has('PROCESS_CREDIT_CARDS')) {
    // ...
}

或在您的DatabaseSeeder.php文件中

public function run()
{
    $this->call(\Acme\Cars\PlateRuleSeeder::class);

    if (Maturity::has('SEED_DEMO_DATA')) {
        // ...
    }
}