Compatible Ruby and Cocoapods versions - ruby

I am developing a Flutter app for Android and iOS. The app is in a stable state of development on the Android simulator so I thought I would try to run it on the iOS simulator. The Flutter installation process on Macos requires installing Cocoapods. After trying to use the Macos installation of Ruby and encountering permission errors, I decided to try asdf, the latest version of Ruby (Ruby 3.0.3p157 (2021-11-24 revision 3fb7d2cadc) [x86_64-darwin21]), and Cocoapods (1.11.2). The installation appeared to be successful, but running pod results in the following error:
Error loading the plugin cocoapods-plugins-1.0.0.
NoMethodError - undefined method activate' for #<Gem::StubSpecification:0x00007f963819f4f8 #extension_dir=nil, #full_gem_path="/Users/xyz/.asdf/installs/ruby/3.0.3/lib/ruby/gems/3.0.0/gems/cocoapods-plugins-1.0.0", #gem_dir=nil, #ignored=nil, #loaded_from="/Users/kevin/.asdf/installs/ruby/3.0.3/lib/ruby/gems/3.0.0/specifications/cocoapods-plugins-1.0.0.gemspec", #data=#<Gem::StubSpecification::StubLine:0x00007f9638194850 #name="cocoapods-plugins", #version=#<Gem::Version "1.0.0">, #platform="ruby", #extensions=[], #full_name="cocoapods-plugins-1.0.0", #require_paths=["lib"]>, #name=nil, #spec=#<Gem::Specification:0x00007f96381cc278 #extension_dir=nil, #full_gem_path="/Users/kevin/.asdf/installs/ruby/3.0.3/lib/ruby/gems/3.0.0/gems/cocoapods-plugins-1.0.0", #gem_dir=nil, #ignored=nil, #bin_dir=nil, #cache_dir=nil, #cache_file=nil, #doc_dir=nil, #ri_dir=nil, #spec_dir=nil, #spec_file=nil, #gems_dir="/Users/kevin/.asdf/installs/ruby/3.0.3/lib/ruby/gems/3.0.0/gems", #base_dir="/Users/kevin/.asdf/installs/ruby/3.0.3/lib/ruby/gems/3.0.0", #loaded=true, #activated=true, #loaded_from="/Users/kevin/.asdf/installs/ruby/3.0.3/lib/ruby/gems/3.0.0/specifications/cocoapods-plugins-1.0.0.gemspec", #original_platform=nil, #installed_by_version=#<Gem::Version "3.3.2">, #autorequire=nil, #date=2016-05-10 00:00:00 UTC, #description=" This CocoaPods plugin shows information about all available CocoaPods plugins\n (yes, this is very meta!).\n This CP plugin adds the \"pod plugins\" command to CocoaPods so that you can list\n all plugins (registered in the reference JSON hosted at CocoaPods/cocoapods-plugins)\n", #email=nil, #homepage="https://github.com/cocoapods/cocoapods-plugins", #name="cocoapods-plugins", #post_install_message=nil, #signing_key=nil, #summary="CocoaPods plugin which shows info about available CocoaPods plugins.", #version=#<Gem::Version "1.0.0">, #authors=["David Grandinetti", "Olivier Halligon"], #bindir="bin", #cert_chain=[], #dependencies=[<Gem::Dependency type=:runtime name="nap" requirements=">= 0">, <Gem::Dependency type=:development name="bundler" requirements="~> 1.3">, <Gem::Dependency type=:development name="rake" requirements=">= 0">], #executables=[], #extensions=[], #extra_rdoc_files=[], #files=[], #licenses=["MIT"], #metadata={}, #platform="ruby", #rdoc_options=[], #require_paths=["lib"], #required_ruby_version=#<Gem::Requirement:0x00007f96381d7b28 #requirements=[[">=", #<Gem::Version "2.0.0">]]>, #required_rubygems_version=#<Gem::Requirement:0x00007f96381d7ee8 #requirements=[[">=", #<Gem::Version "0">]]>, #requirements=[], #rubygems_version="3.3.2", #specification_version=4, #test_files=[], #new_platform="ruby", #full_name="cocoapods-plugins-1.0.0", #full_require_paths=["/Users/kevin/.asdf/installs/ruby/3.0.3/lib/ruby/gems/3.0.0/gems/cocoapods-plugins-1.0.0/lib"] cocoapods-plugins-1.0.0>, #base_dir="/Users/kevin/.asdf/installs/ruby/3.0.3/lib/ruby/gems/3.0.0", #gems_dir="/Users/kevin/.asdf/installs/ruby/3.0.3/lib/ruby/gems/3.0.0/gems", #default_gem=false, #activated=true> Did you mean? activated? /Users/xyz/.asdf/installs/ruby/3.0.3/lib/ruby/gems/3.0.0/gems/claide-1.0.3/lib/claide/command/plugin_manager.rb:93:in safe_activate_and_require'
/Users/xyz/.asdf/installs/ruby/3.0.3/lib/ruby/gems/3.0.0/gems/claide-1.0.3/lib/claide/command/plugin_manager.rb:31:in block in load_plugins' /Users/xyz/.asdf/installs/ruby/3.0.3/lib/ruby/gems/3.0.0/gems/claide-1.0.3/lib/claide/command/plugin_manager.rb:30:in map'
/Users/xyz/.asdf/installs/ruby/3.0.3/lib/ruby/gems/3.0.0/gems/claide-1.0.3/lib/claide/command/plugin_manager.rb:30:in load_plugins' /Users/xyz/.asdf/installs/ruby/3.0.3/lib/ruby/gems/3.0.0/gems/claide-1.0.3/lib/claide/command.rb:326:in block in run'
/Users/xyz/.asdf/installs/ruby/3.0.3/lib/ruby/gems/3.0.0/gems/claide-1.0.3/lib/claide/command.rb:325:in each' /Users/xyz/.asdf/installs/ruby/3.0.3/lib/ruby/gems/3.0.0/gems/claide-1.0.3/lib/claide/command.rb:325:in run'
/Users/xyz/.asdf/installs/ruby/3.0.3/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/lib/cocoapods/command.rb:52:in run' /Users/xyz/.asdf/installs/ruby/3.0.3/lib/ruby/gems/3.0.0/gems/cocoapods-1.11.2/bin/pod:55:in <top (required)>'
/Users/xyz/.asdf/installs/ruby/3.0.3/bin/pod:25:in load' /Users/xyz/.asdf/installs/ruby/3.0.3/bin/pod:25:in '
I do not need a fix. I just want to know versions of Ruby and Cocoapods that are compatible and allow me to make progress on developing my Flutter app on Macos.

After I posted the above issue, others encountered the same problem as reported here: https://github.com/CocoaPods/CocoaPods/issues/11134
The workaround for the problem is to use Ruby 2.7.5. After installing that version, I found Cocoapods 1.11.2 is compatible with Ruby 2.7.5.

brew install ruby#2.7
export PATH="/usr/local/opt/ruby#2.7/bin:$PATH"

Related

EAS build gives: Invalid `RNGestureHandler.podspec` file: undefined method `exists?'

Recently, when I yarn eas build my expo project I have started failing with
[INSTALL_PODS] Using Expo modules
[INSTALL_PODS] [Expo] Enabling modular headers for pod ExpoModulesCore
...
[INSTALL_PODS] [!] Invalid `Podfile` file:
[INSTALL_PODS] [!] Invalid `RNGestureHandler.podspec` file: undefined method `exists?' for File:Class.
...
[INSTALL_PODS] # -------------------------------------------
[INSTALL_PODS] #
[INSTALL_PODS] > isUserApp = File.exists?(File.join(__dir__, "..", "..", "node_modules", "react-native", "package.json"))
[INSTALL_PODS] # if isUserApp
[INSTALL_PODS] # -------------------------------------------
I don't build locally often (remote builds on the Expo servers do fine) so any number of things might have triggered this over the past several weeks, including a migration from an Intel MBP to an M2 MBA, but I wonder if there's an obvious reason that someone has experience with. The error suggests there's something wrong with the podfile's use of an undefined method. But the suggestions for addressing this I've found online involve all kinds of tweaking that are way beyond what I'm familiar with. My experience with Expo/EAS just been to be sure to
brew install cocoapods fastlane
and don't involve much more than that. Ideally I'd like to avoid messing with special gem installations of the sort suggested as quick fixes.
So the question is: is this indeed just a bug in a podfile (use of a deprecated method) that will eventually get fixed?
UPDATE: Broadly it seems that the answer is "yes": this does get fixed in later versions of the affected packages, but those packages are not officially compatible with Expo. If I update them to versions that allow building, then I get warnings:
[RUN_EXPO_DOCTOR] [16:17:37] Some dependencies are incompatible with the installed expo package version:
[RUN_EXPO_DOCTOR] [16:17:37] - react-native-gesture-handler - expected version: ~2.8.0 - actual version installed: 2.9.0
[RUN_EXPO_DOCTOR] [16:17:37] - react-native-reanimated - expected version: ~2.12.0 - actual version installed: 2.14.4
so the question becomes: when will Expo officially support package versions required to successfully build?
Ruby 3.2.0 removed File.exists?.
This issue was reported on the expo repo on GitHub.
The recommended fix is to upgrade to expo#47.0.13.

How to resolve unable to connect to chromedriver 127.0.0.1 in ruby

I am using chrome driver 2.35(tried till v 2.9) and chrome browser v 65.
gems used:
watir 6.10.3
selenium-webdriver 3.11.0
error message:
Selenium::WebDriver::Error::WebDriverError: unable to connect to chromedriver 127.0.0.1:9515
from C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-3.11.0/lib/selenium/webdriver/common/service.rb:142:in `connect_until_stable'
from C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-3.11.0/lib/selenium/webdriver/common/service.rb:72:in `block in start'
from C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-3.11.0/lib/selenium/webdriver/common/socket_lock.rb:39:in `locked'
from C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-3.11.0/lib/selenium/webdriver/common/service.rb:69:in `start'
from C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-3.11.0/lib/selenium/webdriver/chrome/driver.rb:42:in `initialize'
from C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-3.11.0/lib/selenium/webdriver/common/driver.rb:44:in `new'
from C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-3.11.0/lib/selenium/webdriver/common/driver.rb:44:in `for'
from C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-3.11.0/lib/selenium/webdriver.rb:85:in `for'
from C:/Ruby23/lib/ruby/gems/2.3.0/gems/watir-6.10.3/lib/watir/browser.rb:48:in `initialize'
I downgraded the chrome version to 62 and disabled auto update to resolve this issue.
Older version available here
Before installing the older version some steps needs to be followed.
Uninstall current version of chrome
Navigate to C:\Users\\AppData\Local and delete google
directory
Navigate to C:\Program Files (x86) and delete google directory
Install the intended older version
Don't open the chrome browser,chrome gets updated automatically.
Type 'msconfig' in run command and ensure google update services are in 'stopped' status
Navigate to 'C:\Program Files (x86)\Google' and rename 'update'
directory to some other name.If renaming is denied ensure that all
chrome related tasks are closed in task manager and then try
renaming.
Now open chrome and navigate to Help->About Google Chrome.If you get
a error message for update then chrome won't get updated.
I had the same issue, unable to connect chromedriver. So instead of using different chrome driver versions, I have just added gem called chromedriver-helper to my gem list, now works fine.

Jenkins Build, Execute Shell Error

I'm trying to trigger a shell command via Jenkins 2.54 on Build. I've had this running in the past but decided to rebuild my mac 'clean' without TimeMachine..
In the background, i'm using a node.js app for building applications in Agile Central (Rally) - All of this works fine and even the shell command I use runs in the Shell (Fish to be precise).
As far as I can tell I have all the dependancies installed as this works when running from cmd line..
The command I'm using:
ruby /g2ca/git2ca_agile_central.rb devOps
As mentioned in the shell directly this does everything I need, takes a commit with an artefact ID such as a user story US01 and adds the expected outcome to the user stories Change Set:
BUT.. Jenkins throws a fit in it's console:
+ ruby /g2ca/git2ca_agile_central.rb devOps /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:55:in
require': cannot load such file -- vcseif (LoadError) from
/Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:55:in
require' from /g2ca/git2ca_agile_central.rb:35:in `' Build
step 'Execute shell' marked build as failure
I'm no professional coder by any stretch!!! So go easy here as I could be way out of my depth, but this is baffling me..
I'm using Brew also, if it helps here is the output from
Brew Config
HOMEBREW_VERSION: 1.1.12
ORIGIN: https://github.com/Homebrew/brew.git
HEAD: 8ea778f7c7ea790694485030d105a92a9416ef33
Last commit: 9 days ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: 55a35bb74627e9eee9537dc726ac07c3dbc59444
Core tap last commit: 7 hours ago
HOMEBREW_PREFIX: /usr/local
HOMEBREW_REPOSITORY: /usr/local/Homebrew
HOMEBREW_CELLAR: /usr/local/Cellar
HOMEBREW_BOTTLE_DOMAIN: https://homebrew.bintray.com
CPU: octa-core 64-bit haswell
Homebrew Ruby: 2.0.0-p648
Clang: 8.1 build 802
Git: 2.11.0 => /Applications/Xcode.app/Contents/Developer/usr/bin/git
Perl: /usr/bin/perl
Python: /usr/local/bin/python => /usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/bin/python2.7
Ruby: /usr/local/bin/ruby => /usr/local/Cellar/ruby/2.4.1_1/bin/ruby
Java: 1.8.0_121
macOS: 10.12.4-x86_64
Xcode: 8.3.1
CLT: N/A
X11: N/A
Do I have a ruby missmatch between my shell and Jenkins??
Here's what i'm using:
RallyConnectorForGit-3.7_3
Node 5.4.1
rally_api 1.2.1
httpclient 2.8.3
vcseif 1.2.0
Jenkins 2.54
I'm lost... Anything else you need please shout!
This is fixed was ruby version on HBrew

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`
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/.

Encountering probles install cocoapods (Xcode)

I'm having issues installing cocoa pods to my college's computer. I talked to the technical director for the CS department, who used admin privileges to SSH into my computer and install cocoa pods. However, when I try to call pod install onto the directory where the Xcode project lies, I get the following error.
Preparing
Analyzing dependencies
Updating spec repositories
Updating spec repo master
$ /usr/bin/git pull --ff-only
Already up-to-date.
Inspecting targets to integrate
Using ARCHS setting to build architectures of target Pods: ()
Using `ARCHS` setting to build architectures of target `Pods-Edify Testing`: ()
Finding Podfile changes
- OBShapedButton
- ObjectAL-for-iPhone
- UIMenuItem-CXAImageSupport
- UIView-Autolayout
Resolving dependencies of Podfile
Finished resolution (0 steps) (Took 0.764299 seconds) (2015-05-28 17:33:19 -0500)
[!] Unable to find a specification for ObjectAL-for-iPhone (~> 2.5)
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.37.2/lib/cocoapods/resolver.rb:395:in handle_resolver_error'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.37.2/lib/cocoapods/resolver.rb:64:inrescue in resolve'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.37.2/lib/cocoapods/resolver.rb:55:in resolve'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.37.2/lib/cocoapods/installer/analyzer.rb:440:inblock in resolve_dependencies'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.37.2/lib/cocoapods/user_interface.rb:59:in section'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.37.2/lib/cocoapods/installer/analyzer.rb:438:inresolve_dependencies'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.37.2/lib/cocoapods/installer/analyzer.rb:63:in analyze'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.37.2/lib/cocoapods/installer.rb:196:inanalyze'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.37.2/lib/cocoapods/installer.rb:114:in block in resolve_dependencies'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.37.2/lib/cocoapods/user_interface.rb:59:insection'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.37.2/lib/cocoapods/installer.rb:113:in resolve_dependencies'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.37.2/lib/cocoapods/installer.rb:93:ininstall!'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.37.2/lib/cocoapods/command/project.rb:71:in run_install_with_update'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.37.2/lib/cocoapods/command/project.rb:101:inrun'
/Library/Ruby/Gems/2.0.0/gems/claide-0.8.1/lib/claide/command.rb:312:in run'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.37.2/lib/cocoapods/command.rb:46:inrun'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.37.2/bin/pod:44:in <top (required)>'
/usr/bin/pod:23:inload'
/usr/bin/pod:23:in `'
I have tried replacing the single quotes in the the Podfile, which did not work. I get the following error instead:
Analyzing dependencies
[!] Unable to find a specification for OBShapedButton

Resources