2017-06-08 55 views
6

我有一個私人吊艙和一個私人規格回購。我服莢作爲二進制,即podspec說:Pod安裝失敗,專用吊艙作爲私人回購的二進制服務

s.source = { 
    :http => 'https://github.com/COMPANY/PROJECT/releases/download/v1.0/PrivatePod.zip' 
} 

我Podfile有以下來源的信息:

source 'https://github.com/CocoaPods/Specs.git' 
source 'https://github.com/COMPANY/Specs.git' 

當我運行pod install git的提示輸入密碼,克隆我的私人規範回購,這是偉大的。

然而,pod install試圖讓使用curl沒有認證的二進制壓縮包,讓GitHub上返回404:

Installing PROJECT 1.0 (was 1.0) 

[!] Error installing PROJECT [!] /usr/bin/curl -f -L -o /var/folders/_g/52mwshws60v8622n81hv7h7w0000gn/T/d20170608-80045-1l3flqz/file.zip https://github.com/COMPANY/PROJECT/releases/download/v1.1/PrivatePod.zip --create-dirs --netrc-optional 
... 
curl: (22) The requested URL returned error: 404 Not Found 

我不想讓公衆二進制文件。有沒有辦法告訴CocoaPods在這裏做一些認證?

我試着把憑據放在.netrc,CocoaPods似乎很高興使用,但GitHub仍然無法通過404請求,即使我看到curl現在使用基本身份驗證。如果我使用netrc進行auth的curl API請求,我得到的迴應就好了。但我無法下載版本資產。

我可以使用.netrc從api端點獲得版本資產,但前提是我指定-H 'Accept: application/octet-stream',但我沒有看到如何讓CocoaPods能夠做到這一點。

+0

可能的解決方案:https://stackoverflow.com/questions/43885763/cocoapods-with-private-git-repository/43892558#43892558? – Larme

+0

我確實看到了解決方法。問題在於你必須提交發行版二進制文件,而不是使用Github的非SCM託管位。 –

+0

GitHub支持是說他們只是不支持auth發佈下載。他們將其添加到一些內部功能請求列表中,該列表可能會永遠被忽略。好吧。答:不可能。主機在別的地方糟糕。 –

回答

1

GitHub只是不支持這一點。解決方案:不要在github上託管二進制文件,如果回收站託管它是私人的。