2017-10-16 58 views
1

我有沒有代碼但有依賴關係列表的作曲家項目。我想運行composer install來下載所有相關的軟件包,並在它後面的每個軟件包中運行一些bash命令。嵌套軟件包的作曲者運行腳本

我composer.json:

{ 
 
\t "name": "testmain/testmain", 
 
\t "description": "testmain", 
 
\t "minimum-stability": "dev", 
 
\t "repositories": [{ 
 
\t \t \t "type": "package", 
 
\t \t \t "package": { 
 
\t \t \t \t "name": "testsub/testsub1", 
 
\t \t \t \t "description": "testsub/testsub1", 
 
\t \t \t \t "version": "master", 
 
\t \t \t \t "source": { 
 
\t \t \t \t \t "url": "https://github.com/testsub/testsub1", 
 
\t \t \t \t \t "type": "git", 
 
\t \t \t \t \t "reference": "master" 
 
\t \t \t \t }, 
 
\t \t \t \t "scripts": { 
 
\t \t \t \t \t "post-install-cmd": [ 
 
\t \t \t \t \t \t "make", 
 
\t \t \t \t \t \t "make install" 
 
\t \t \t \t \t ] 
 
\t \t \t \t } 
 
\t \t \t } 
 
\t \t }, 
 

 
\t \t { 
 
\t \t \t "type": "package", 
 
\t \t \t "package": { 
 
\t \t \t \t "name": "testsub/testsub2", 
 
\t \t \t \t "description": "testsub/testsub2", 
 
\t \t \t \t "version": "master", 
 
\t \t \t \t "source": { 
 
\t \t \t \t \t "url": "https://github.com/testsub/testsub2", 
 
\t \t \t \t \t "type": "git", 
 
\t \t \t \t \t "reference": "master" 
 
\t \t \t \t }, 
 
\t \t \t \t "scripts": { 
 
\t \t \t \t \t "post-install-cmd": [ 
 
\t \t \t \t \t \t "make", 
 
\t \t \t \t \t \t "make install" 
 
\t \t \t \t \t ] 
 
\t \t \t \t } 
 
\t \t \t } 
 
\t \t } 
 
\t ], 
 
\t "require": { 
 
\t \t "testsub/testsub1": "master", 
 
\t \t "testsub/testsub2": "master" 
 
\t } 
 
}

的問題是在運行嵌套包scripts序列,所有的腳本由作曲家忽略。

謝謝!

回答

1

不幸的是,這是不可能執行的任何非根腳本(以意非root composer.json),如documentation提到:

注意:只有在根包的作曲家定義的腳本。 json被執行。如果根包的依賴項指定了自己的腳本,則Composer不會執行這些附加腳本。