it-swarm.com.de

Cocoapods "Pod Update" installiert alte Pods

Ich versuche, CI auf dem Xcode Server einzurichten, indem ich einen Bot für eine iOS-App erstellt. Ich benutze CocoaPods, also verwende ich das folgende Skript, um die Pods zu installieren:

export LANG=en_US.UTF-8
#!/bin/bash
cd "$XCS_SOURCE_DIR/{PROJECTNAME}"
if [ -e "Pods" ]
then
/usr/local/bin/pod update
else
/usr/local/bin/pod install
fi

Die aktuelle Version von CocoaPods 0.39.0 ist auf dem Server installiert. Wenn ich "Pod Update" auf dem Server starte, ist alles in Ordnung und die neuesten Pods werden installiert. 

Using FBAudienceNetwork (4.7.0)
Using FBSDKCoreKit (4.8.0)
Using Fabric (1.6.1)
Using FyberSDK (8.1.2)
Using Google-Mobile-Ads-SDK (7.6.0)
Using GoogleAnalytics (3.14.0)

Wenn ich das obige Skript verwende, passiert jedoch etwas Seltsames.

Installing FBAudienceNetwork (4.1.0)
Installing FBSDKCoreKit (4.4.0)
Installing Fabric (1.2.8)
Installing FyberSDK (7.2.4)
Installing Google-Mobile-Ads-SDK (7.3.1)
Installing GoogleAnalytics (3.13.0)

Hat jemand eine Idee, warum alte Versionen mit dem Skript installiert werden? Ich verwende OS X Server 5.0.15 und Xcode 7.2.

Die podfile:

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

platform :ios, "8.0"
use_frameworks!

target "{PROJECTNAME}" do
    inhibit_all_warnings!

    pod 'AFNetworking'
    pod 'Branch'
    pod 'SwrveSDK'
    pod 'RealmSwift'
    pod 'MZTimerLabel'
    pod 'pop' 
    pod 'Adjust'
    pod 'JSQMessagesViewController'
    pod 'Fabric'
    pod 'Crashlytics'
    pod 'GoogleAnalytics'
    pod 'FBSDKCoreKit'
    pod 'FyberSDK'
    pod 'AdColony'
    pod 'Google-Mobile-Ads-SDK'
    pod 'ChartboostSDK'
    pod 'FBAudienceNetwork'
    pod 'VungleSDK-iOS'
end

target "{PROJECTNAME}Tests" do
    inhibit_all_warnings!

    pod 'AFNetworking'
    pod 'Branch'
    pod 'SwrveSDK'
    pod 'RealmSwift'
    pod 'MZTimerLabel'
    pod 'pop'
    pod 'Adjust'
    pod 'JSQMessagesViewController'
    pod 'Fabric'
    pod 'Crashlytics'
    pod 'GoogleAnalytics'
    pod 'FBSDKCoreKit'
    pod 'FyberSDK'
    pod 'AdColony'
    pod 'Google-Mobile-Ads-SDK'
    pod 'ChartboostSDK'
    pod 'FBAudienceNetwork'
end

post_install do |installer|
    installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            config.build_settings['ENABLE_BITCODE'] = 'NO'
        end
    end
end
24
youritrg

Ich habe es jetzt funktioniert! Ich wusste nichts über den _xcsbuildd-Benutzer, der die Builds ausführt. Mehr dazu habe ich hier gefunden: https://honzadvorsky.com/articles/2015-08-17-17-30-xcode_server_tutorials_3_prebuild__postbuild_scripts/

Nachdem ich mich als dieser Benutzer angemeldet hatte, sah ich dasselbe Problem im Terminal auf dem Server. Alte Versionen der Pods wurden heruntergeladen. Das Master-Repository von CocoaPods weist einige Fehler auf, also habe ich es getan

rm -rf ~/.cocoapods/repos/master

Dann bin ich gerannt

pod setup --verbose

Das Master-Repository mit den Cocoapods-Spezifikationen wurde erneut installiert. Jetzt gehts!

30
youritrg

Für diejenigen, die dieses Problem mit neueren Bibliotheken haben, wie:

  • Facebook Login
  • "FBSDKLoginKit"
  • "FBSDKShareKit"
  • "FBSDKCoreKit"

sie müssen Ihre Cocoapods auf die neueste Version (derzeit 1.2) aktualisieren. 

Ich habe folgendes gemacht, was funktioniert hat: .__ (Warnung Cocoapods scheint ewig im Leerlauf zu sitzen, aber ich schätze, es tut etwas.) Befolgen Sie die ersten beiden Schritte von @youritrg oben im Terminal:

rm -rf ~/.cocoapods/repos/master
pod setup --verbose 

Sie sollten jetzt eine aktualisierte Installation haben. Ich habe dann aktualisiert, indem ich 

Sudo gem install cocoapods

Nach der Installation sind die Facebook Cocoapods perfekt installiert. 

7
Mobile Bloke

Für mich hat alles deinstalliert und dann das Master-Repo entfernt

gem list --local | grep cocoapods
Sudo gem uninstall cocoapods
Sudo gem uninstall cocoapods-core
Sudo gem uninstall cocoapods-deintegrate
Sudo gem uninstall cocoapods-downloader 
Sudo gem uninstall cocoapods-plugins
Sudo gem uninstall cocoapods-search
Sudo gem uninstall cocoapods-stats
Sudo gem uninstall cocoapods-trunk
Sudo gem uninstall cocoapods-try

dann

rm -rf ~/.cocoapods/repos/master
Sudo gem install cocoapods

dann

pod setup --verbose
3
u.gen

Laufen pod repo update hat diesen Fehler für mich behoben

1
mwanjajoel

Tut mir leid, dass ich einen alten Thread gefunden habe, aber ich hatte ein ähnliches Problem, da Firebase/Admob nicht aktualisiert wurde. Ich habe den gleichen Fehler wie andere, die oben erwähnt wurden. Ich habe alles, was oben erwähnt wurde, ausprobiert, aber für mich war die einzige Möglichkeit, die Pods richtig zu aktualisieren, das Auskommentieren der Zeile

use_frameworks!

Ich weiß, dass dies einbezogen werden sollte, da ich Swift verwende, aber es scheint jetzt gut zu funktionieren. Wenn irgendjemand irgendwelche Gründe hat, würde ich gerne wissen, was los ist! 

0
Iain Coleman