"Vendor Everything" still applies
Upcoming SlideShare
Loading in...5
×
 

"Vendor Everything" still applies

on

  • 1,625 views

This talk is a quick lesson on some of the conventions I use and as they relate to Bundler and RVM....

This talk is a quick lesson on some of the conventions I use and as they relate to Bundler and RVM.

As a consultant, I jump between a lot of different Ruby projects from day to day. Some are my own; some are owned by others. Some are greenfield; some are legacy. Sometimes, I’m the sole developer; sometimes, I’m working with a team.

There’s nothing more frustrating than jumping on an existing project only to fall into dependency hell when your first goal is just a passing test suite. Dependencies can be quite difficult to manage, and fortunately, we have some great tools like Bundler and RVM to help out. The problem, however, is that conventions surrounding these tools aren’t yet settled.

Statistics

Views

Total Views
1,625
Views on SlideShare
1,582
Embed Views
43

Actions

Likes
0
Downloads
6
Comments
0

5 Embeds 43

http://coderwall.com 38
http://www.linkedin.com 2
http://twitter.com 1
http://a0.twimg.com 1
https://twimg0-a.akamaihd.net 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    "Vendor Everything" still applies "Vendor Everything" still applies Presentation Transcript

    • “Vendor Everything” Ryan McGeary http://ryan.mcgeary.org Still Applies @rmm5t
    • e m s e m / g g . g o r f iv e nd c on
    • WHY?
    • Check in your .rvmrcrvm ruby-1.9.2
    • RVM GemsetsAre Overrated
    • Let Bundler Follow the --path$ bundle install --path vendor$ echo vendor/ruby >> .gitignore
    • Package Your Gems in vendor/cache$ bundle package
    • Help!alias b="bundle"alias bi="b install --path vendor"alias bu="b update"alias be="b exec"alias binit="bi && b package && ignore_vendor_ruby"
    • .!"" .gitignore!"" .rvmrc!"" Gemfile!"" Gemfile.lock#"" vendor !"" cache $   !"" coffee-script-2.2.0.gem $   !"" coffee-script-source-1.1.0.gem $   !"" execjs-0.4.0.gem $   #"" multi_json-1.0.2.gem #"" ruby #"" 1.9.1 !"" bin !"" cache !"" doc !"" gems #"" specifications
    • .!"" .gitignore!"" .rvmrc!"" Gemfile!"" Gemfile.lock#"" vendor !"" cache $   !"" coffee-script-2.2.0.gem $   !"" coffee-script-source-1.1.0.gem $   !"" execjs-0.4.0.gem $   #"" multi_json-1.0.2.gem #"" ruby #"" 1.9.1 !"" bin !"" cache !"" doc !"" gems #"" specifications
    • .!"" .gitignore!"" .rvmrc!"" Gemfile!"" Gemfile.lock#"" vendor !"" cache $   !"" coffee-script-2.2.0.gem $   !"" coffee-script-source-1.1.0.gem $   !"" execjs-0.4.0.gem $   #"" multi_json-1.0.2.gem #"" ruby #"" 1.9.1 !"" bin !"" cache !"" doc !"" gems #"" specifications
    • .!"" .gitignore!"" .rvmrc!"" Gemfile!"" Gemfile.lock#"" vendor !"" cache $   !"" coffee-script-2.2.0.gem $   !"" coffee-script-source-1.1.0.gem $   !"" execjs-0.4.0.gem ven dor $   #"" multi_json-1.0.2.gem --p ath #"" ruby sta ll #"" 1.9.1 le in !"" binund b !"" cache !"" doc !"" gems #"" specifications
    • .!"" .gitignore!"" .rvmrc!"" Gemfile!"" Gemfile.lock#"" vendor ack age !"" cache dl e p bun $   !"" coffee-script-2.2.0.gem $   !"" coffee-script-source-1.1.0.gem $   !"" execjs-0.4.0.gem $   #"" multi_json-1.0.2.gem #"" ruby #"" 1.9.1 !"" bin !"" cache !"" doc !"" gems #"" specifications
    • Ryan McGearyryan.mcgeary.org @rmm5t ryan@mcgeary.orgMcGeary Consulting Group