Sha256: b443bb993a70f97701921ff5667004006d46125d268b82d405c300067646460c
Contents?: true
Size: 1.67 KB
Versions: 6
Compression:
Stored size: 1.67 KB
Contents
#!/usr/bin/env ruby require 'yaml' def execute(*commands) commands.each do |command| system(command) unless $?.success? message = [ "Executing shell command failed.", " Command: #{command}", " Status: #{$?.exitstatus}" ].join("\n") raise message end end end def reset_bundle execute( "rm -rf .bundle/gems", "rm -rf gemfiles/.bundle/gems", "rm -f *.lock", "rm -f gemfiles/*.lock" ) end def with_rbenv(command) %{export PATH="$HOME/.rbenv/bin:$PATH"; eval "$(rbenv init -)"; #{command}} end def run(ruby_version, gemfile, task = "test") ENV["RBENV_VERSION"] = ruby_version ENV["BUNDLE_GEMFILE"] = gemfile ENV["MOCHA_OPTIONS"] = "debug" reset_bundle execute( with_rbenv("bundle install --gemfile=#{gemfile}"), with_rbenv("bundle exec rake #{task}"), ) end travis_config = YAML.load(File.read('.travis.yml')) build_configs = travis_config['matrix']['include'] travis_config['rvm'].each do |ruby_version| travis_config['gemfile'].each do |gemfile| travis_config['env'].each do |env| build_configs << { 'rvm' => ruby_version, 'gemfile' => gemfile, 'env' => env } end end end build_configs.each do |config| ruby_version = config['rvm'] gemfile = config['gemfile'] environment_variables = Hash[*config['env'].split.flat_map { |e| e.split('=') }] original_environment_variables = {} begin environment_variables.each do |k, v| original_environment_variables[k] = ENV[k] ENV[k] = v end p [ruby_version, gemfile, environment_variables] run(ruby_version, gemfile) ensure original_environment_variables.each do |k, v| ENV[k] = v end end end
Version data entries
6 entries across 6 versions & 1 rubygems
Version | Path |
---|---|
mocha-1.6.0 | bin/build-matrix |
mocha-1.5.0 | bin/build-matrix |
mocha-1.4.0 | bin/build-matrix |
mocha-1.3.0 | bin/build-matrix |
mocha-1.2.1 | bin/build-matrix |
mocha-1.2.0 | bin/build-matrix |