2016-07-22 38 views
0

我爲我的組織安裝了gitlab安裝。爲了標準化,我們希望在我們的服務器上使用我們自己的packagist安裝的框架和開發過程。 讓我感到困惑的是,當我必須提交一個包含在gitlab回購的包時,它需要驗證。我知道在包含composer.json的包時,我可以將回購,用戶名和密碼設置爲可以從那裏讀取包。或者當我創建一個項目:使用gitlab在packagist上託管私人PHP包

composer create-project vendor/name path --repository-url=http://user:[email protected]/myrepo/package.git

如果這是真的,我們真的需要packagist?如果是的話,那麼設置這個最好的方法是什麼。 如果你們還告訴我packagist(我們自己託管的)上的包裹提交將如何工作,我將不勝感激。

+0

您確實希望擁有關於您的私人包的所有Composer信息的本地元數據存儲。否則,您必須在根應用程序的所有'composer.json'文件中包含可能包含軟件包的所有存儲庫,即使是傳遞包關係。您可能考慮的另一件事是:爲標記版本提供ZIP文件,而不是要求每個人和您的部署系統克隆所有內容。如果您確實需要它的功能,您可以在本地安裝Packagist,但我仍然樂意使用Satis託管120個內部軟件包和300多個外部設備。 – Sven

+0

@Sven那麼你是否使用'satis'來代替Packagist來維護私有包?這種方法的優點是什麼?這不是我只想使用packagist。我覺得它只是一樣的東西,只是軟件是不同的。 – SAM

+0

Satis本質上是「運行一個腳本,產生一些靜態輸出,然後在你能想象到的最基本的Web服務器上託管它」。與使用某種數據庫的packagist相比,服務器上至少需要PHP。有些缺點像「Satis只能一次更新一切」,這對我們來說大約需要5到8分鐘。 Packagist將能夠觸發一個包並且只會更新這個包。作爲第三種選擇,您還應該查看https://toranproxy.com。 – Sven

回答

0

有一個新產品可用於企業,以簡化這一過程:Private Packagist。它允許您爲GitLab存儲庫配置憑據,然後使私有存儲庫中的包可用於Composer。您可以管理哪些人可以訪問哪些軟件包,並使用單個令牌爲每個用戶的Composer處理身份驗證。 Private VCS Package頁面解釋了這是如何工作的。