2014-02-22 33 views
0

使用作曲家我想有一個自定義的需求部分使用ci服務器。PHP Composer ci需要

事情是這樣的:

{ 
    "require": { 
     ... 
    }, 
    "require-dev": { 
     ... 
    }, 
    "require-ci": { 
     ... 
    }, 
} 

這可能嗎?在作曲家文檔中,我只能找到使用require和require-dev的參考。

回答

0

作曲者只有兩種依賴關係:運行軟件所需的東西以及開發它所需的東西。

除非你在Composer中實現另一個類別,否則你必須忍受你得到的東西。

需要什麼類型的軟件-Ci類別包含?如果它是在CI中運行測試的軟件,請使用require-dev(即使您的本地開發人員不需要它)。或者讓這些組件成爲您使用的現成CI服務器的一部分。如果你想到Travis CI,那麼配置虛擬機的腳本應該安裝不屬於你軟件的任何東西,所以如果你想要運行composer install --ci來獲取Travis CI所需的所有東西,你可能會使用一個不同的在您的腳本中使用方法如composer create-project that/ci-tool

+0

其他方式。我有一些工具用於開發,需要一段時間來安裝,並且在構建ci(travis)時不需要它們。 –

+0

功能請求應該到Github的項目網站:https://github.com/composer/composer然後。 – Sven

0

這不是一個好的模式,因爲您可以有效地對您的CI配置進行沙箱處理,並打破了持續集成的全部要點。

如果集成和驗收測試結果要可靠,則CI作業中的工作空間和測試表面應儘可能與生產環境相匹配。