qobo / phake-builder
该软件包已废弃,不再维护。没有建议替代包。
基于jaz303/phake的一组构建和部署文件
v5.0.0
2017-10-09 09:06 UTC
Requires
- gorkalaucirica/hipchat-v2-api-client: ~1.5
- jaz303/phake: ~0.6
- kmelia/monolog-stdout-handler: ~1.2
- monolog/monolog: ~1.11
- pdepend/pdepend: *
- phploc/phploc: *
- phpmd/phpmd: *
- phpunit/phpunit: ~5.3
- pyrech/composer-changelogs: ~1.4
- qobo/pattern: ~2.0
- qobo/search-replace-db: ~4.0
- sami/sami: ~3.2
- sebastian/phpcpd: *
- squizlabs/php_codesniffer: *
- symfony/filesystem: ~2.7
- symfony/finder: ~2.7
- twig/twig: ~1.2
- vlucas/phpdotenv: ~1.1
- zetacomponents/archive: 1.5
- dev-master
- v5.0.0
- v4.0.1
- v4.0.0
- v3.0.0
- v2.8.2
- v2.8.1
- v2.8.0
- v2.7.1
- v2.7.0
- v2.6.0
- v2.5.2
- v2.5.1
- v2.5.0
- v2.4.0
- v2.3.0
- v2.2.0
- v2.1.0
- v2.0.1
- v2.0.0
- v1.2.7
- v1.2.6
- v1.2.5
- v1.2.4
- v1.2.3
- v1.2.2
- v1.2.1
- v1.2.0
- v1.1.0
- v1.0.38
- v1.0.37
- v1.0.36
- v1.0.35
- v1.0.34
- v1.0.33
- v1.0.32
- v1.0.31
- v1.0.30
- v1.0.29
- v1.0.28
- v1.0.27
- v1.0.26
- v1.0.25
- v1.0.24
- v1.0.23
- v1.0.22
- v1.0.21
- v1.0.20
- v1.0.19
- v1.0.18
- v1.0.17
- v1.0.16
- v1.0.15
- v1.0.14
- v1.0.13
- v1.0.12
- v1.0.11
- v1.0.10
- v1.0.9
- v1.0.8
- v1.0.7
- v1.0.6
- v1.0.5
- v1.0.4
- v1.0.3
- v1.0.2
- v1.0.1
- v1.0.0
- dev-remove-obsolete-package
- dev-1.0-fixes
This package is auto-updated.
Last update: 2023-04-07 12:20:22 UTC
README
一组基于jaz303/phake的构建和部署文件。
如果您觉得这个有用,可以看看基于这个模板的其他项目模板
- project-template - 通用PHP项目模板
- project-template-wordpress - WordPress CMS的自动化设置
- project-template-cakephp - CakePHP框架的丰富设置
安装
使用composer进行安装
{ "require": { "qobo/phake-builder": "~2.0" } }
用法
在项目根目录下创建一个Phakefile
(或Phakefile.php
),内容如下
<?php require_once 'vendor/qobo/phake-builder/Phakefile.php'; ?>
注意:供应商的Phakefile不会自动加载,因为它在项目的每个部分除了构建配置之外都是无用的并且令人烦恼。所以,请仅在这一点上手动包含它。
现在您可以通过运行以下命令来查看可用的构建目标列表
$ ./vendor/bin/phake -T
输出应类似于以下内容
(in /path/to/your/project)
archive:compress Create ZIP or TAR archive
archive:extract Extract ZIP or TAR archive
builder:init Initialize builder configuration
composer:install Install composer dependencies
composer:update Update composer dependencies
default Default target
dotenv:create Create .env file
dotenv:delete Delete .env file
dotenv:reload Reload settings from .env
file:chgrp Change group ownership on path
file:chmod Change permissions on path
file:chown Change user ownership on path
file:download Download file from URL
file:link Create symbolic link
file:mkdir Create folder
file:mv Rename file or folder
file:process Process template file
file:rm Recursively remove file or folder
file:touch Create empty file or update timestamp of existing
git:changelog Git changelog
git:checkout Git checkout
git:pull Git pull
git:push Git push
mysql:access-file-allow Allow file operation
mysql:access-file-deny Deny file operation
mysql:access-grant Grant access
mysql:access-revoke Revoke access
mysql:connect Test MySQL database connection
mysql:database-create Create database
mysql:database-drop Drop database
mysql:database-import Import database
mysql:find-replace Find and replace across the database
system:service-restart Restart system service
system:service-start Start system service
system:service-stop Stop system service
您可以通过以下方式运行这些目标中的任何一个
$ ./vendor/bin/phake mysql:connect
大多数包含的构建目标都需要一些参数。您可以通过.env
文件提供这些参数。最初,您可以简单地复制提供的示例文件。您甚至可以使用phake-builder这样做
$ ./vendor/bin/phake dotenv:create
或者,您可以从命令行传递参数。例如
$ ./vendor/bin/phake mysql:connect DB_HOST=localhost DB_USER=root
查看.env.example
文件中的示例和参数的默认值。查看vendor/qobo/phake-builder/src
文件夹中的任务定义,以了解哪些任务接受哪些参数。
对于需要多次运行不同参数的任务,您可以创建自己的任务,要么以不同的方式处理参数,要么直接调用PHP功能。查看vendor/qobo/phake-builder/src
文件夹中的类,以及相关的单元测试。
现在您已准备好创建自己的构建目标。为了在所有目标的列表中使它们在视觉上分开,建议您在“app”组中这样做。以下是为您的Phakefile创建此类目标的示例
<?php require_once 'vendor/qobo/phake-builder/Phakefile.php'; group('app', function() { desc("This is a test"); task('install', 'db:connect', function() { printSuccess('Awesome!'); }); }); ?>
现在您可以安装您的应用程序了
$ ./vendor/bin/phake app:install