Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Vagrant Berkshelf could not find the 'berks' executable in your PATH. When running 'vagrant up'

$ vagrant up
Bringing machine 'district' up with 'virtualbox' provider...
Vagrant Berkshelf could not find the 'berks' executable in your PATH.

Please download and install the latest version of the ChefDK from:

    https://downloads.getchef.com/chef-dk

and follow the installation instructions. Do not forget to add the ChefDK to
your PATH.
  • I downloaded the latest version of ChefDK as instructed.
  • How would I add the path to Berkshelf in the vagrant file?

Here is the my current Vgrantfile:

$ cat Vagrantfile
# vi: set ft=ruby :

    Vagrant.configure('2') do |config|
      config.vm.define 'district' do |app|
        app.vm.box = 'ubuntu/trusty64'

        app.vm.provider 'virtualbox' do |v|
          v.memory = 1024
          v.name = 'district'
        end

        app.ssh.forward_agent = true
        app.vm.network :forwarded_port, guest: 4567, host: 4567

        app.vm.synced_folder './', '/home/vagrant/WhatsMyDistrict'

        app.berkshelf.enabled = true

        app.vm.provision :chef_solo do |chef|
          chef.log_level = :debug
          chef.custom_config_path = 'chef_solo.config'
          chef.run_list = ['whatsmydistrict::default']
        end
      end
    end
like image 663
aSilveira Avatar asked Dec 11 '25 11:12

aSilveira


1 Answers

Make sure you've added /opt/chefdk/bin to your $PATH.

It's recommended to have it prior to any ruby path locations - prepending is the easiest way to ensure this.

export PATH=/opt/chefdk/bin:$PATH
like image 149
thomaswsdyer Avatar answered Dec 14 '25 09:12

thomaswsdyer



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!