macrominds / app
基本的库,简化使用IoC、.env和配置的App设置
v2.0.0
2023-09-17 08:43 UTC
Requires
- php: ^8.0
- pimple/pimple: ^3.5
- vlucas/phpdotenv: ^5.5
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.19
- phpmetrics/phpmetrics: ^2.8
- phpunit/php-code-coverage: ^9.2
- phpunit/phpunit: ^9.6
This package is not auto-updated.
Last update: 2024-09-15 13:34:11 UTC
README
基本的库,简化使用IoC、.env和配置的App设置
用法
创建自己的应用并添加所需的特征。默认的基本 App
已经提供了 use HasContainer
。
use Macrominds\App\App;
class MyApp extends App {
use \Macrominds\Config\UsesDotEnv;
use \Macrominds\Config\IsConfigurable;
use \Macrominds\Services\AllowsServiceRegistration;
use \Macrominds\App\HasDefaultProjectPath;
protected function registerServices(string $projectPath)
{
$this->registerDotEnv($projectPath);
$this->registerDefaultConfig();
$this->registerProjectPathProvider($projectPath);
}
}
编码风格
运行 vendor/bin/php-cs-fixer fix .
以应用编码风格修复。
测试此项目
运行 ./vendor/bin/phpunit
以运行测试。
自动测试和Docker镜像
该项目提供了一个 .gitlab-ci.yml,因此使用GitLab CI/CD。
本地构建镜像
$ ./ci.bash build-all-local
在容器中运行phpunit
$ ./ci.bash test-all-local
构建并发布gitlab CI的镜像(也可参阅gitlab文档)
$ ./ci.bash build-all-remotes-and-publish
重用测试设置到你的项目
包含
到你的项目的 .gitlab-ci.yml。
如有必要,覆盖使用的变量。
请参见 .gitlab-ci.yml 以获取本地包含示例,并参阅 GitLab文档 以深入了解本地和远程包含选项以及如何覆盖变量。
指标和覆盖率
- metrics:
composer app:phpmetrics
- 覆盖率报告:
composer app:coverage
报告存储在report
目录中。这两个脚本将在成功完成后输出报告的路径。