Skip to content
Vendorer keeps your dependencies documented, cached and up to date
Ruby
Find file
Latest commit 22a1240 Jan 20, 2016 @grosser readme
Failed to load latest commit information.
bin refactor + tests Apr 1, 2014
lib fail on broken files Jan 13, 2015
spec fail on broken files Jan 14, 2015
.travis.yml Test against Ruby 2.3.0 on Travis CI Jan 21, 2016
Gemfile https Apr 1, 2014
Gemfile.lock v0.1.16 May 15, 2014
Rakefile bump-tasks Dec 2, 2012
Readme.md readme Jan 20, 2016
vendorer.gemspec

Readme.md

Vendorer

  • documented & cached dependencies
  • automatic updates
  • no unwanted/accidental updates

Install

Needs: Curl + Git + Ruby

then:

gem install vendorer

or standalone

curl https://rubinjam.herokuapp.com/pack/vendorer > vendorer && chmod +x vendorer
./vendorer -v

Usage

Add a Vendorfile (or Vendorfile.rb) to your project root:

file 'vendor/assets/javascripts/jquery.min.js', 'http://code.jquery.com/jquery-latest.min.js'
folder 'vendor/plugins/parallel_tests', 'https://github.com/grosser/parallel_tests.git'

# Execute a block after updates
file 'vendor/assets/javascripts/jquery.js', 'http://code.jquery.com/jquery.js' do |path|
  puts "Do something useful with #{path}"
  rewrite(path) { |content| content.gsub(/\r\n/, \n).gsub /\t/, ' ' }
end

# Checkout a specific :ref/:tag/:branch
folder 'vendor/plugins/parallel_tests', 'https://github.com/grosser/parallel_tests.git', :tag => 'v0.6.10'

# DRY folders
folder 'vendor/assets/javascripts' do
  file 'jquery.js', 'http://code.jquery.com/jquery-latest.js'
end

# Copy files & folders from repos (also works with private repos)
from 'https://github.com/grosser/parallel_tests.git' do |checkout_location|
  file 'Readme.md'
  file 'target-folder/file.rb', 'lib/parallel_tests.rb'
  folder 'spec'
  folder 'renamed-folder', 'spec'
end
  • Create a new Vendorfile: vendorer init
  • excute all installations: vendorer
  • Update all dependencies: vendorer update
  • update a single dependency: vendorer update vendor/assets/javascripts/jquery.min.js
  • update everything in a specific folder: vendorer update vendor/assets/javascripts

Alternatives

  • Vendorificator more features/complexity, but similar interface/concept

TODO

  • nice error message when no Vendorfile was found

Author

Contributors

Michael Grosser
michael@grosser.it
License: MIT
Build Status

Something went wrong with that request. Please try again.