Search code examples
xcodecontinuous-integrationcocoapods

Xcode 7 Bot pod install


I get error when try install pods with bot. Could someone please explain what the problem is? I checked this solution on Setting up Xcode 6 and Apple Server 4.0 for Continuous Integration with Cocoapods

Before integration script:

export LANG=en_US.UTF-8 cd ./CIT pwd pod install --verbose

Error:

/Library/Developer/XcodeServer/Integrations/Caches/27e5cbb07ffa7d7771a63d27e6002e1e/Source/CIT Preparing

Updating local specs repositories


Updating spec repo `master`
  $ /Applications/Xcode.app/Contents/Developer/usr/bin/git pull --ff-only
  Updating dc43eae..957650b

Analyzing dependencies

Inspecting targets to integrate
  Using `ARCHS` setting to build architectures of target `Pods`: (``)

Finding Podfile changes
  - AFNetworking

Resolving dependencies of `Podfile`
[!] Unable to satisfy the following requirements:

- `AFNetworking` required by `Podfile`
- `AFNetworking (= 2.6.0)` required by `Podfile.lock`

/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.38.2/lib/cocoapods/resolver.rb:388:in `handle_resolver_error'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.38.2/lib/cocoapods/resolver.rb:69:in `rescue in resolve'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.38.2/lib/cocoapods/resolver.rb:56:in `resolve'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.38.2/lib/cocoapods/installer/analyzer.rb:535:in `block in resolve_dependencies'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.38.2/lib/cocoapods/user_interface.rb:59:in `section'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.38.2/lib/cocoapods/installer/analyzer.rb:533:in `resolve_dependencies'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.38.2/lib/cocoapods/installer/analyzer.rb:70:in `analyze'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.38.2/lib/cocoapods/installer.rb:210:in `analyze'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.38.2/lib/cocoapods/installer.rb:133:in `block in resolve_dependencies'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.38.2/lib/cocoapods/user_interface.rb:59:in `section'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.38.2/lib/cocoapods/installer.rb:132:in `resolve_dependencies'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.38.2/lib/cocoapods/installer.rb:104:in `install!'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.38.2/lib/cocoapods/command/project.rb:71:in `run_install_with_update'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.38.2/lib/cocoapods/command/project.rb:101:in `run'
/Library/Ruby/Gems/2.0.0/gems/claide-0.9.1/lib/claide/command.rb:312:in `run'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.38.2/lib/cocoapods/command.rb:48:in `run'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.38.2/bin/pod:44:in `<top (required)>'
/usr/bin/pod:23:in `load'
/usr/bin/pod:23:in `<main>'
  error: Your local changes to the following files would be overwritten by merge:
    CocoaPods-version.yml
    Specs/ASStarRatingView/0.1.0/ASStarRatingView.podspec.json
    Specs/AppNexusOASSDK/1.0.0/AppNexusOASSDK.podspec.json
    Specs/CrashlyticsFramework/2.1.6/CrashlyticsFramework.podspec.json
    Specs/CrashlyticsFramework/2.1.7/CrashlyticsFramework.podspec.json
    Specs/CrashlyticsFramework/2.1.9/CrashlyticsFramework.podspec.json
    Specs/CrashlyticsFramework/2.2.0/CrashlyticsFramework.podspec.json
    Specs/CrashlyticsFramework/2.2.1/CrashlyticsFramework.podspec.json
    Specs/CrashlyticsFramework/2.2.10/CrashlyticsFramework.podspec.json
    Specs/CrashlyticsFramework/2.2.2/CrashlyticsFramework.podspec.json
    Specs/CrashlyticsFramework/2.2.3/CrashlyticsFramework.podspec.json
    Specs/CrashlyticsFramework/2.2.4/CrashlyticsFramework.podspec.json
    Specs/CrashlyticsFramework/2.2.5.1/CrashlyticsFramework.podspec.json
    Specs/CrashlyticsFramework/2.2.5.2/CrashlyticsFramework.podspec.json
    Specs/CrashlyticsFramework/2.2.5/CrashlyticsFramework.podspec.json
    Specs/CrashlyticsFramework/2.2.9/CrashlyticsFramework.podspec.json
    Specs/FlurrySDK/3.0.9/FlurrySDK.podspec.json
    Specs/FlurrySDK/4.0.1/FlurrySDK.podspec.json
    Specs/FlurrySDK/4.0.4/FlurrySDK.podspec.json
    Specs/FlurrySDK/4.0.5/FlurrySDK.podspec.json
    Specs/FlurrySDK/4.1.0/FlurrySDK.podspec.json
    Specs/FlurrySDK/4.2.1/FlurrySDK.podspec.json
    Specs/FlurrySDK/4.2.2/FlurrySDK.podspec.json
    Specs/FlurrySDK/4.2.3/FlurrySDK.podspec.json
    Specs/FlurrySDK/4.2.4/FlurrySDK.podspec.json
    Specs/FlurrySDK/4.3.0/FlurrySDK.podspec.json
    Specs/FlurrySDK/4.3.1/FlurrySDK.podspec.json
    Specs/FlurrySDK/4.3.2/FlurrySDK.podspec.json
    Specs/FlurrySDK/4.4.0/FlurrySDK.podspec.json
    Specs/FlurrySDK/5.0.0/FlurrySDK.podspec.json
    Specs/FlurrySDK/5.1.0/FlurrySDK.podspec.json
    Specs/FlurrySDK/5.2.0/FlurrySDK.podspec.json
    Specs/FlurrySDK/5.3.0/FlurrySDK.podspec.json
    Specs/FlurrySDK/5.4.0/FlurrySDK.podspec.json
    Specs/FlurrySDK/6.0.0/FlurrySDK.podspec.json
    Specs/FlurrySDK/6.2.0/FlurrySDK.podspec.json
    Specs/FlurrySDK/6.4.0/FlurrySDK.podspec.json
    Specs/FlurrySDK/6.5.0/FlurrySDK.podspec.json
    Specs/Google-Maps-iOS-SDK/1.9.2/Google-Maps-iOS-SDK.podspec.json
    Specs/LibComponentLogging-pods/0.0.1/LibComponentLogging-pods.podspec.json
    Specs/LibComponentLogging-pods/0.0.2/LibComponentLogging-pods.podspec.json
    Specs/Moya/0.6.1/Moya.podspec.json
    Specs/Moya/0.6/Moya.podspec.json
    Specs/Moya/0.7.0/Moya.podspec.json
    Specs/Moya/0.7.1/Moya.podspec.json
    Specs/Moya/0.8.0/Moya.podspec.json
    Specs/Moya/1.0.0/Moya.podspec.json
    Specs/Moya/1.1.0/Moya.podspec.json
    Specs/Moya/1.1.1/Moya.podspec.json
    Specs/OpenCV/2.4.10/OpenCV.podspec.json
    Specs/OpenCV/2.4.9/OpenCV.podspec.json
    Specs/PromiseKit/1.5.3/PromiseKit.podspec.json
    Specs/RxSwift/0.7.1/RxSwift.podspec.json
    Specs/RxSwift/0.7/RxSwift.podspec.json
    Specs/RxSwift/0.8/RxSwift.podspec.json
    Specs/RxSwift/0.9/RxSwift.podspec.json
    Specs/RxSwift/1.0/RxSwift.podspec.json
    Specs/RxSwift/1.1/RxSwift.podspec.json
    Specs/RxSwift/1.2.1/RxSwift.podspec.json
    Specs/RxSwift/1.2/RxSwift.podspec.json
    Specs/RxSwift/1.3/RxSwift.podspec.json
    Specs/RxSwift/1.4/RxSwift.podspec.json
    Specs/RxSwift/1.5/RxSwift.podspec.json
    Specs/RxSwift/1.6/RxSwift.podspec.json
    Specs/TSMessages/0.9.10/TSMessages.podspec.json
    Specs/TSMessages/0.9.11/TSMessages.podspec.json
    Specs/TSMessages/0.9.12/TSMessages.podspec.json
    Specs/TSMessages/0.9.4/TSMessages.podspec.json
    Specs/TSMessages/0.9.5/TSMessages.podspec.json
    Specs/TSMessages/0.9.6/TSMessages.podspec.json
    Specs/TSMessages/0.9.7/TSMessages.podspec.json
    Specs/TSMessages/0.9.8/TSMessages.podspec.json
    Specs/TSMessages/0.9.9/TSMessages.podspec.json
    Specs/UIView+Wiggle/1.0.0/UIView+Wiggle.podspec.json
    Specs/UIView+Wiggle/1.0.1/UIView+Wiggle.podspec.json
    Specs/UIView+Wiggle/1.0.2/UIView+Wiggle.podspec.json
    Specs/toxcore-ios/0.1.0/toxcore-ios.podspec.json
    Specs/toxcore-ios/0.1.1/toxcore-ios.podspec.json
    Specs/toxcore-ios/0.1.2/toxcore-ios.podspec.json
    Specs/toxcore-ios/0.1.3/toxcore-ios.podspec.json
    Specs/toxcore-ios/0.1.4/toxcore-ios.podspec.json
    Specs/toxcore-ios
  Aborting

[!] CocoaPods was not able to update the `master` repo. If this is an unexpected issue and persists you can inspect it running `pod repo update --verbose`

Solution

  • I needed to reset the Cocoapods repo that is utilized by user _xcsbuildd on my XcodeServer in order to get past the problem noted above. Here's how I did that:

    1) On your OS X Server (running XcodeServer), select 'Users' from the Server Window, then right click on '_xcsbuildd' and select 'Advanced Options...'. Change the 'Login shell' from '/bin/false' to '/bin/bash'. (This will allow you to login as user '_xcsbuildd' from a terminal window.)

    2) From a terminal window on OS X Server, login as any user. Then, to login as '_xcsbuildd', use sudo su - _xcsbuildd.

    3) Remove the Cocoapods repo for user _xcsbuildd using rm -rf ~/.cocoapods.

    4) Finally, integrate your BOT from your Xcode development client which will rebuild the Cocoapods repo as part of its before integration trigger step.

    (My client environment is OS X 10.11 and Xcode 7.0.1, while my server environment is OS X 10.11, OS X Server 5.0.4, and Xcode 7.0.1. Cocoapods version is 0.38.2)

    The following reference was helpful to me: http://honzadvorsky.com/articles/2015-08-17-17-30-xcode_server_tutorials_3_prebuild__postbuild_scripts/.