citadel.nodes.rbenv module

class citadel.nodes.rbenv.Rbenv(yml, path)[source]
Synopsis:

Sets up a basic ruby environment.

Requirements:

internet connection, git client, curl

Platform:

Any

Parameters:
  • ruby (optional) – The ruby version to be installed
  • cocoapods (optional) – The cocoapods to be installed

Usage

1
2
3
rbenv:
  ruby: 2.3.0
  cocoapods: 1.1.0

Warning

If any RVM version is installed, it will get imploded.

This module will download the contents of the rbenv git repository and/or the contents of the CocoaPods git repository. It will also build the source version of the provided ruby version if not found already in the system, meaning it might take a while to setup the environment.

Before installing cocoapods, it will make sure any other versions do not exist by uninstalling them all.

After installing cocoapods, it will also run a “pod setup” and “pod install” on the current working directory.

This module also has special behaviour to support older versions of CocoaPods (<=0.3.x). This was precisely the rationale for creating it since critical issues were found when building multiple projects with very different requirements on the same OSX machine (iOS apps).