ars
ars

Reputation: 1639

Setting up Travis Build as addon for CLI

I'm trying to generate a shell script for local building of a project which uses Travis CI with the help of Travis build library. I am going to use it as an addon for Travis CLI. So I've installed CLI:

sudo apt-get install -y python-software-properties
sudo apt-add-repository -y ppa:brightbox/ruby-ng
sudo apt-get update
sudo apt-get install ruby2.1 ruby-switch
sudo ruby-switch --set ruby2.1
sudo apt-get install -y ruby2.1-dev
sudo gem install travis --no-rdoc --no-ri

...

vagrant@worker-2:~$ ruby -v
ruby 2.1.6p336 (2015-04-13 revision 50298) [x86_64-linux-gnu]
vagrant@worker-2:~$ travis -v
1.7.7

Then I've installed Travis build as CLI addon according to the docs:

vagrant@worker-2:~$ git clone https://github.com/travis-ci/travis-build.git
Cloning into 'travis-build'...
remote: Counting objects: 21669, done.
remote: Compressing objects: 100% (30/30), done.
remote: Total 21669 (delta 14), reused 0 (delta 0), pack-reused 21639
Receiving objects: 100% (21669/21669), 3.29 MiB | 864.00 KiB/s, done.
Resolving deltas: 100% (12293/12293), done.
Checking connectivity... done.
vagrant@worker-2:~$ ln -s ~/travis-build/ ~/.travis/travis-build

And now I'm getting the following error when I try to do travis compile:

vagrant@worker-2:~$ travis compile 
/usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- coder (LoadError)
    from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /home/vagrant/.travis/travis-build/lib/travis/shell/generator/bash/helpers.rb:2:in `<top (required)>'
    from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /home/vagrant/.travis/travis-build/lib/travis/shell/generator/bash/cmd.rb:1:in `<top (required)>'
    from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /home/vagrant/.travis/travis-build/lib/travis/shell/generator/bash.rb:8:in `<class:Bash>'
    from /home/vagrant/.travis/travis-build/lib/travis/shell/generator/bash.rb:7:in `<class:Generator>'
    from /home/vagrant/.travis/travis-build/lib/travis/shell/generator/bash.rb:6:in `<module:Shell>'
    from /home/vagrant/.travis/travis-build/lib/travis/shell/generator/bash.rb:5:in `<module:Travis>'
    from /home/vagrant/.travis/travis-build/lib/travis/shell/generator/bash.rb:4:in `<top (required)>'
    from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /home/vagrant/.travis/travis-build/lib/travis/shell.rb:4:in `<top (required)>'
    from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /home/vagrant/.travis/travis-build/lib/travis/build.rb:2:in `<top (required)>'
    from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /home/vagrant/.travis/travis-build/init.rb:11:in `setup'
    from /var/lib/gems/2.1.0/gems/travis-1.7.7/lib/travis/cli/command.rb:197:in `execute'
    from /var/lib/gems/2.1.0/gems/travis-1.7.7/lib/travis/cli.rb:64:in `run'
    from /var/lib/gems/2.1.0/gems/travis-1.7.7/bin/travis:18:in `<top (required)>'
    from /usr/local/bin/travis:23:in `load'
    from /usr/local/bin/travis:23:in `<main>'
vagrant@worker-2:~$ 

I am not familiar with Ruby and Travis, so I have no idea what it requires and why. Any thoughts? The OS is Ubuntu Trusty.

Upvotes: 3

Views: 217

Answers (1)

Ryne Everett
Ryne Everett

Reputation: 6829

Looks like ruby folks have a third party package to install requirements called bundler that they assume you'll realize you have to use:

gem install bundler
bundle install --gemfile .travis/travis-build/Gemfile

Upvotes: 2

Related Questions