container.sh 761 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #!/bin/sh
  2. set -e
  3. gems="$(ruby -e '
  4. # list taken from https://rubygems.org/stats
  5. gems = %w{
  6. bundler
  7. multi_json
  8. rake
  9. rack
  10. json
  11. mime-types
  12. activesupport
  13. thor
  14. i18n
  15. diff-lcs
  16. }
  17. # last updated 2017-11-15
  18. require "json"
  19. require "open-uri"
  20. for gem in gems
  21. # ruby 2.2.2+: rack activesupport
  22. # ruby 2.0+: mime-types
  23. # (jruby 1.7 is ruby 1.9)
  24. gemRubyVersion = JSON.load(open("https://rubygems.org/api/v1/versions/#{ gem }.json"))[0]["ruby_version"]
  25. if Gem::Dependency.new("", gemRubyVersion).match?("", RUBY_VERSION)
  26. puts gem
  27. else
  28. STDERR.puts "skipping #{ gem } due to required Ruby version: #{ gemRubyVersion } (vs #{ RUBY_VERSION })"
  29. end
  30. end
  31. ')"
  32. for gem in $gems; do
  33. echo "$ gem install $gem"
  34. gem install "$gem"
  35. done