mihaildev/yiicomposer

Yii Composer 安装器

安装: 298

依赖: 0

建议者: 0

安全性: 0

星级: 1

关注者: 2

分支: 1

公开问题: 0

类型:composer-installer

2.0.0 2013-10-23 17:17 UTC

This package is not auto-updated.

Last update: 2024-09-24 02:31:18 UTC


README

开发用于方便使用 Composer 和 Yii 框架

{
    "config":{
        "vendor-dir": "www/protected/vendor"
    },
    "extra": {
        "yiicomposer-paths":{
            "module": "{vendor}/modules/{name}",
            "extension":"{vendor}/extensions/{name}",
            "framework": "{vendor}/framework",
            "yiisoft/yii": "$framework$"
        },
        "yiicomposer-console-config":"www/protected/config/console.php",
        "yiicomposer-console-commands":[
            {
                "controller":"migrate"
            },
            {
                "controller":"test",
                "action": "test",
                "params": {
                    "param1": "value1",
                    "param2": "value2",
                    "param3": "value3"
                }
            }
        ]
    },
    "require": {
        "mihaildev/yiicomposer": "dev-master",
        "yiisoft/yii": "1.1.14"
    },
    "scripts":{
        "post-update-cmd": "YiiComposer\\Console::update"
    }
}

配置路径

配置路径由变量 "yiicomposer-paths" 负责。路径的生成基于以下变量

{vendor} – 包含所有包的文件夹路径,从主要的 "vendor-dir" 设置中获取

{type} – 如果指定了包类型,例如yii-extension-test - {type} 将等于 extension。包类型可以在包的设置中指定(在 composer.json 文件的包 "type" 参数中)或者项目文件中的 "yiicomposer-paths" 部分指定,如 yiisoft/yii 已设置类型为 framework。type 可以用几种格式指定,在包 yii-{type} 或 yii-{type}-{name} 或项目文件 "yiicomposer-paths" 部分中使用

{package} – 原始包名称(例如 mihaildev/testextension 将等于 mihaildev/testextension)

{name} – 默认名称取自包名称的第二部分(例如 "name": "mihaildev/testmodule" {name} 等于 testmodule),如果名称在包类型中设置,则 yiicomposer 将取用它(例如 yii-extension-test - {name} 将等于 test),也可以在设置中重命名(例如 "clevertech/yii-booster": "$extension-yii-booster$" {name} 将等于 yii-booster)

在其中可以指定主要支持的类型(module、extension、framework)以及添加自己的类型。

    "extra":{
        "yiicomposer-paths":{
            "sometype": "{vendor}/some/{name}"
            "yiiext/migrate-command": "$sometype-hochutut$"
            "mihaildev/testextension": "$sometype-hochutut2$"
        }
    },
    "require": {
        "mihaildev/yiicomposer": "dev-master",
        "mihaildev/testextension": "dev-master",
        "yiisoft/yii": "dev-master",
        "yiiext/migrate-command": "dev-master"
    }

配置包

选项 1

{
    "name": "mihaildev/testextension",
    "type": "yii-extension-test"
}

在这种情况下 {type} 等于 extension 而 {name} 等于 test

选项 2

{
    "name": "mihaildev/testextension",
    "type": "yii-extension"
}

在这种情况下 {type} 等于 extension 而 {name} 等于 testextension

配置控制台命令

在 scripts 部分,添加以下条目 "post-update-cmd": "YiiComposer\Console::update"

示例

{
    "minimum-stability" : "alpha",
    "config":{
        "vendor-dir": "www/protected/vendor"
    },
	"extra":{
			"yiicomposer-paths":{
				"clevertech/yii-booster": "$extension-yii-booster$",
				"yiiext/migrate-command": "$extension$"
			}
	},
     "require": {
        "mihaildev/yiicomposer": "dev-master",
		"mihaildev/testmodule": "dev-master",
		"mihaildev/testextension": "dev-master",
		"yiisoft/yii": "dev-master",
		"clevertech/yii-booster": "v2.0.0",
		"yiiext/migrate-command": "dev-master"
    },
	"scripts":{
        "post-update-cmd": "YiiComposer\\Console::update"
    }
}

默认情况下,用于启动控制台应用程序的配置文件位于 path/to/vendor/../config/console.php,因为我认为用户会将 vendor 文件夹存储在 protected 文件夹中,但在需要时可以设置变量 "yiicomposer-console-config" 来指定配置文件的路径。

示例

{
    "minimum-stability" : "alpha",
    "config":{
        "vendor-dir": "www/protected/vendor"
    },
	"extra":{
			"yiicomposer-console-config":"www/protected/config/console.php",

			"yiicomposer-paths":{
				"clevertech/yii-booster": "$extension-yii-booster$",
				"yiiext/migrate-command": "$extension$"
			}
	},
     "require": {
        "mihaildev/yiicomposer": "dev-master",
		"mihaildev/testmodule": "dev-master",
		"mihaildev/testextension": "dev-master",
		"yiisoft/yii": "dev-master",
		"clevertech/yii-booster": "v2.0.0",
		"yiiext/migrate-command": "dev-master"
    },
	"scripts":{
        "post-update-cmd": "YiiComposer\\Console::update"
    }
}

默认情况下仅执行一个控制台命令 yiic migrate。如果需要,可以添加或重写要执行的命令列表,通过配置变量 "yiicomposer-console-commands" 实现。

示例

{
    "minimum-stability" : "alpha",
    "config":{
        "vendor-dir": "www/protected/vendor"
    },
	"extra":{
			"yiicomposer-console-config":"www/protected/config/console.php",

			"yiicomposer-console-commands":[
            {
                "controller":"migrate"
            },
            {
                "controller":"test",
                "action": "test",
                "params": {
                    "param1": "value1",
                    "param2": "value2",
                    "param3": "value3"
                }
            }
        ],

			"yiicomposer-paths":{
				"clevertech/yii-booster": "$extension-yii-booster$",
				"yiiext/migrate-command": "$extension$"
			}
	},
     "require": {
        "mihaildev/yiicomposer": "dev-master",
		"mihaildev/testmodule": "dev-master",
		"mihaildev/testextension": "dev-master",
		"yiisoft/yii": "dev-master",
		"clevertech/yii-booster": "v2.0.0",
		"yiiext/migrate-command": "dev-master"
    },
	"scripts":{
        "post-update-cmd": "YiiComposer\\Console::update"
    }
}