2017 © Pedro Peláez
 

composer-installer yiicomposer

Yii Composer installer

image

mihaildev/yiicomposer

Yii Composer installer

  • Tuesday, November 5, 2013
  • by mihaildev
  • Repository
  • 1 Watchers
  • 1 Stars
  • 288 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 0 Open issues
  • 4 Versions
  • 0 % Grown

The README.md

Yii Composer Installer

Разработка для удобного использования Composer с фреймворком Yii, (*1)

{
    "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". Формирование пути, основываясь на следующих переменных:, (*2)

{vendor} – путь к папке для хранения всех пакетов берётся из основных настроек "vendor-dir", (*3)

{type} – тип пакета, если указан (пример yii-extension-test - {type} будет равен extension) Тип пакета можно указать как в настройках пакета (в файле composer.json параметр "type" пакета) так и в настройках проектного файла в разделе "yiicomposer-paths" как для пакета yiisoft/yii установлен тип framework. Тип задаётся в нескольких форматах для параметра type в пакете yii-{type} или yii-{type}-{name} или в проектном файле в разделе "yiicomposer-paths" в формате ${type}$ или ${type}-{name}$, (*4)

{package} – название пакета оригинальное (пример mihaildev/testextension будет равен mihaildev/testextension), (*5)

{name} – название по умолчанию берётся из названия пакета вторая часть (пример "name": "mihaildev/testmodule" {name} равен testmodule), если название установлено в типе пакета, то yiicomposer возьмёт его (пример yii-extension-test - {name} будет равен test) также можно переназначить и в настройках (пример "clevertech/yii-booster": "$extension-yii-booster$" {name} будет равен yii-booster), (*6)

В ней можно преназначить основные потдерживаемые типы (module, extension, framework) а также добавить свои типы., (*7)

    "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, (*8)

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

в данном случае {type} равен extension а {name} равен test, (*9)

Вариант 2, (*10)

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

в данном случае {type} равен extension а {name} равен testextension, (*11)

Настройка консольных команд

В раздел scripts вносим следующую запись "post-update-cmd": "YiiComposer\Console::update", (*12)

Пример, (*13)

{
    "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" указав путь к файлу с настройками., (*14)

Пример:, (*15)

{
    "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", (*16)

Пример:, (*17)

{
    "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"
    }
}

The Versions

05/11 2013

dev-master

9999999-dev http://github.com/mihaildev/yiicomposer

Yii Composer installer

  Sources   Download

BSD-3-Clause

The Requires

  • php >=5.3.0

 

installer yii

23/10 2013

2.0.0

2.0.0.0 http://github.com/mihaildev/yiicomposer

Yii Composer installer

  Sources   Download

BSD-3-Clause

The Requires

  • php >=5.3.0

 

installer yii

23/10 2013

1.0.1

1.0.1.0 http://github.com/mihaildev/yiicomposer

Yii Composer installer

  Sources   Download

BSD-3-Clause

The Requires

  • php >=5.3.0

 

installer yii

23/10 2013

1.0.0

1.0.0.0 http://github.com/mihaildev/yiicomposer

Yii Composer installer

  Sources   Download

The Requires

  • php >=5.3.0

 

installer yii