2017-06-08 1 views
6

J'ai un pod privé et un dépôt privé. Je suis au service de la nacelle comme binaire, à savoir le podspec dit:L'installation du pod échoue lorsque le pod privé est servi en tant que binaire à partir d'un dépôt privé

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

Mon PODFILE dispose des informations de source suivante:

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

Quand je lance pod install git invite à entrer un mot de passe pour cloner mon spec privé repo, ce qui est génial. Cependant

, pod install cherche à obtenir le package zip binaire à l'aide curl sans authentification, donc GitHub retourne 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 

Je ne veux pas faire le public binaire. Est-ce que je peux dire à CocoaPods de faire un auth ici?

J'ai essayé de mettre des identifiants dans .netrc, que CocoaPods semble heureux d'utiliser, mais GitHub échoue toujours la requête avec 404, même si je vois que curl utilise maintenant l'authentification de base. Si je fais des requêtes API avec curl en utilisant netrc pour auth, j'obtiens des réponses très bien. Mais je ne peux pas télécharger l'élément de version.

Je peux obtenir l'asset de release du point de terminaison api en utilisant .netrc, mais seulement si je spécifie -H 'Accept: application/octet-stream', ce que je ne vois pas comment je peux faire faire ça à CocoaPods.

+0

Solution possible: https://stackoverflow.com/questions/43885763/cocoapods-with-private-git-repository/43892558#43892558? – Larme

+0

J'ai vu ce travail autour. Le problème ici est que vous devez valider les binaires de version, au lieu d'utiliser l'hébergement de bits non-SCM de Github. –

+0

Le support de GitHub dit qu'ils ne supportent pas l'authentification pour les téléchargements de versions. Ils l'ont ajouté à une liste de demandes de fonctionnalités internes qui sera probablement ignorée pour toujours. Tant pis. Réponse: NON POSSIBLE Hébergez cette merde ailleurs. –

Répondre

1

GitHub ne supporte pas cela. Solution: n'hébergez pas le binaire sur github si l'hébergement est privé.