I have the following vagrant file:
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu/trusty64"
config.vm.box_check_update = false
config.vm.provider "virtualbox" do |vb|
vb.memory = "1024"
vb.cpus = 2
end
config.ssh.forward_agent = true
config.ssh.forward_x11 = true
config.vm.provision "shell", inline: <<-SHELL
apt-get update
apt-get install -y libgtk2.0-dev gtk2.0
SHELL
end
When I run it, it fails on installations:
==> default: update-default-wordlist: Question empty but elements installed for class "wordlist"
==> default: dictionaries-common/default-wordlist: return code: "0", value: ""
==> default: Choices: , Manual symlink setting
==> default: shared/packages-wordlist: return code: "10" owners/error: "shared/packages-wordlist doesn't exist"
==> default: Installed elements: canadian-small (Canadian English -- small)
==> default: Please see "/usr/share/doc/dictionaries-common/README.problems", section
==> default: "Debconf database corruption" for recovery info.
==> default: update-default-wordlist: Selected wordlist ""
==> default: does not correspond to any installed package in the system
==> default: and no alternative wordlist could be selected.
==> default: dpkg: error processing package dictionaries-common (--configure):
==> default: subprocess installed post-installation script returned error exit status 255
==> default: dpkg: dependency problems prevent configuration of aspell:
==> default: aspell depends on dictionaries-common (>> 0.40); however:
==> default: Package dictionaries-common is not configured yet.
==> default: dpkg: error processing package aspell (--configure):
==> default: dependency problems - leaving unconfigured
==> default: dpkg: dependency problems prevent configuration of aspell-en:
==> default: aspell-en depends on aspell (>= 0.60.3-2); however:
==> default: Package aspell is not configured yet.
==> default: aspell-en depends on dictionaries-common (>= 0.49.2); however:
==> default: Package dictionaries-common is not configured yet.
==> default: dpkg: error processing package aspell-en (--configure):
==> default: dependency problems - leaving unconfigured
==> default: dpkg: dependency problems prevent configuration of hunspell-en-us:
==> default: hunspell-en-us depends on dictionaries-common (>= 0.10); however:
==> default: Package dictionaries-common is not configured yet.
==> default: dpkg: error processing package hunspell-en-us (--configure):
==> default: dependency problems - leaving unconfigured
When I run the installations manually everything works.
Any idea to why this fails and what can be done?
Thanks
Related
I'm trying to provision a vagrant box using the vagrant-berkshelf plugin. I created a new berks-powered cookbook by running the following command: berks cookbook vagrancy and then adding my desired cookbooks (e.g git, rvm) to the generated Berksfile.
My Vagrantfile:
# -*- mode: ruby -*-
# vi: set ft=ruby :
# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = '2'
Vagrant.require_version '>= 1.5.0'
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.hostname = 'vagrancy-berkshelf'
if Vagrant.has_plugin?("vagrant-omnibus")
config.omnibus.chef_version = 'latest'
end
config.vm.box = 'bento/centos-6.7'
config.vm.network :private_network, type: 'dhcp'
config.vm.synced_folder "~/repos", "/repos"
config.berkshelf.enabled = true
config.vm.provision :chef_solo do |chef|
chef.json = {
rvm: {
user_installs: [{
user: 'vagrant',
default_ruby: '2.3.0',
global_gems: [{
name: 'bundler'
}]
}]
}
}
chef.run_list = [
'recipe[vagrancy::default]'
]
end
end
My Berksfile:
source "https://supermarket.chef.io"
metadata
cookbook 'build-essential'
cookbook 'yum'
cookbook 'git'
cookbook 'rvm'
cookbook 'nodejs'
cookbook 'python'
cookbook 'tmux'
cookbook 'vim'
The output when I run vagrant provision:
$ vagrant provision
==> default: Loading Berkshelf datafile...
==> default: Sharing cookbooks with VM
==> default: Updating Vagrant's Berkshelf...
==> default: Resolving cookbook dependencies...
==> default: Fetching 'vagrancy' from source at .
==> default: Using 7-zip (1.0.2)
==> default: Using ark (1.0.1)
==> default: Using apt (3.0.0)
==> default: Using build-essential (2.4.0)
==> default: Using chef_handler (1.3.0)
==> default: Using chef_gem (0.1.0)
==> default: Using dmg (2.3.0)
==> default: Using git (4.3.7)
==> default: Using homebrew (2.0.5)
==> default: Using java (1.39.0)
==> default: Using nodejs (2.4.4)
==> default: Using python (1.4.6)
==> default: Using rvm (0.9.4)
==> default: Using seven_zip (2.0.0)
==> default: Using tmux (1.5.0)
==> default: Using vagrancy (0.1.0) from source at .
==> default: Using windows (1.39.2)
==> default: Using vim (2.0.1)
==> default: Using yum (3.10.0)
==> default: Using yum-epel (0.6.6)
==> default: Vendoring 7-zip (1.0.2) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/7-zip
==> default: Vendoring apt (3.0.0) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/apt
==> default: Vendoring ark (1.0.1) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/ark
==> default: Vendoring build-essential (2.4.0) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/build-essential
==> default: Vendoring chef_gem (0.1.0) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/chef_gem
==> default: Vendoring chef_handler (1.3.0) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/chef_handler
==> default: Vendoring dmg (2.3.0) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/dmg
==> default: Vendoring git (4.3.7) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/git
==> default: Vendoring homebrew (2.0.5) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/homebrew
==> default: Vendoring java (1.39.0) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/java
==> default: Vendoring nodejs (2.4.4) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/nodejs
==> default: Vendoring python (1.4.6) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/python
==> default: Vendoring rvm (0.9.4) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/rvm
==> default: Vendoring seven_zip (2.0.0) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/seven_zip
==> default: Vendoring tmux (1.5.0) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/tmux
==> default: Vendoring vagrancy (0.1.0) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/vagrancy
==> default: Vendoring vim (2.0.1) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/vim
==> default: Vendoring windows (1.39.2) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/windows
==> default: Vendoring yum (3.10.0) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/yum
==> default: Vendoring yum-epel (0.6.6) to /Users/mueller128/.berkshelf/vagrant-berkshelf/shelves/berkshelf20160321-4742-1l5l6ts-default/yum-epel
==> default: Running provisioner: chef_solo...
==> default: Detected Chef (latest) is already installed
==> default: Generating chef JSON and uploading...
==> default: Running chef-solo...
==> default: [2016-03-21T21:27:41+00:00] INFO: Forking chef instance to converge...
==> default: Starting Chef Client, version 12.9.0
==> default: [2016-03-21T21:27:41+00:00] INFO: *** Chef 12.9.0 ***
==> default: [2016-03-21T21:27:41+00:00] INFO: Chef-client pid: 5659
==> default: [2016-03-21T21:27:42+00:00] INFO: Setting the run_list to ["recipe[vagrancy::default]"] from CLI options
==> default: [2016-03-21T21:27:42+00:00] INFO: Run List is [recipe[vagrancy::default]]
==> default: [2016-03-21T21:27:42+00:00] INFO: Run List expands to [vagrancy::default]
==> default: [2016-03-21T21:27:42+00:00] INFO: Starting Chef Run for vagrant-9a1b8405
==> default: [2016-03-21T21:27:42+00:00] INFO: Running start handlers
==> default: [2016-03-21T21:27:42+00:00] INFO: Start handlers complete.
==> default: Installing Cookbook Gems:
==> default: Compiling Cookbooks...
==> default: Converging 0 resources
==> default: [2016-03-21T21:27:43+00:00] INFO: Chef Run complete in 0.924325387 seconds
==> default: [2016-03-21T21:27:43+00:00] INFO: Skipping removal of unused files from the cache
==> default:
==> default: Running handlers:
==> default: [2016-03-21T21:27:43+00:00] INFO: Running report handlers
==> default: Running handlers complete
==> default:
==> default: [2016-03-21T21:27:43+00:00] INFO: Report handlers complete
==> default: Chef Client finished, 0/0 resources updated in 02 seconds
However, when I run vagrant ssh and type git it says the command is not found.
Thanks for any and all help.
While you have a whole bunch of cookbooks being sync'd to the machine via berkshelf, the only recipe you are actually running is recipe[vagrancy::default]. You can see in the Chef output (Converging 0 resources) that this isn't actually doing anything. Either you intended for that one recipe to include_recipe the others or you want to add more to the node's run list.
I was trying to install piwik-dev-environment. According to instructions I cloned the repo, installed Vagrant and executed vagrant up. The process ended with the following error:
Error: Could not parse application options: invalid option: --manifestdir
Full logs are here:
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Box 'trusty64' could not be found. Attempting to find and install...
default: Box Provider: virtualbox
default: Box Version: >= 0
==> default: Box file was not detected as metadata. Adding it directly...
==> default: Adding box 'trusty64' (v0) for provider: virtualbox
default: Downloading: https://cloud-images.ubuntu.com/vagrant/trusty/current/trusty-server-cloudimg-amd64-vagrant-disk1.box
default: Progress: 100% (Rate: 1170k/s, Estimated time remaining: --:--:--)
==> default: Successfully added box 'trusty64' (v0) for 'virtualbox'!
==> default: Importing base box 'trusty64'...
==> default: Matching MAC address for NAT networking...
==> default: Setting the name of the VM: piwik-dev-environment_default_1438688840836_21904
==> default: Clearing any previously set forwarded ports...
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
default: Adapter 2: hostonly
==> default: Forwarding ports...
default: 22 => 2222 (adapter 1)
==> default: Running 'pre-boot' VM customizations...
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant
default: SSH auth method: private key
default: Warning: Connection timeout. Retrying...
default:
default: Vagrant insecure key detected. Vagrant will automatically replace
default: this with a newly generated keypair for better security.
default:
default: Inserting generated public key within guest...
default: Removing insecure key from the guest if it's present...
default: Key inserted! Disconnecting and reconnecting using new SSH key...
==> default: Machine booted and ready!
==> default: Checking for guest additions in VM...
==> default: Setting hostname...
==> default: Configuring and enabling network interfaces...
==> default: Mounting shared folders...
default: /vagrant => D:/Git/piwik-dev-environment
default: /etc/puppet/files => D:/Git/piwik-dev-environment/puppet/files
default: /home/vagrant/www => D:/Git/piwik-dev-environment/www
default: /tmp/vagrant-puppet/modules-48bf73244a40076992a5cef90c07f471 => D:/Git/piwik-dev-environment/puppet/modules
default: /tmp/vagrant-puppet/manifests-768747907b90c39ab6f16fcb3320897a => D:/Git/piwik-dev-environment/puppet
==> default: Running provisioner: shell...
default: Running: inline script
==> default: stdin: is not a tty
==> default: Reading package lists...
==> default: Building dependency tree...
==> default: Reading state information...
==> default: ruby is already the newest version.
==> default: 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
==> default: Successfully installed facter-2.4.4
==> default: Successfully installed json_pure-1.8.2
==> default: Successfully installed hiera-3.0.1
==> default: Successfully installed puppet-4.2.1
==> default: 4 gems installed
==> default: Installing ri documentation for facter-2.4.4...
==> default: Installing ri documentation for json_pure-1.8.2...
==> default: Installing ri documentation for hiera-3.0.1...
==> default: Installing ri documentation for puppet-4.2.1...
==> default: Installing RDoc documentation for facter-2.4.4...
==> default: Installing RDoc documentation for json_pure-1.8.2...
==> default: Installing RDoc documentation for hiera-3.0.1...
==> default: Installing RDoc documentation for puppet-4.2.1...
==> default: Successfully installed hiera-3.0.1
==> default: 1 gem installed
==> default: Installing ri documentation for hiera-3.0.1...
==> default: Installing RDoc documentation for hiera-3.0.1...
==> default: Successfully installed hiera-1.3.4
==> default: Successfully installed hiera-puppet-1.0.0
==> default: 2 gems installed
==> default: Installing ri documentation for hiera-1.3.4...
==> default: Installing ri documentation for hiera-puppet-1.0.0...
==> default: Installing RDoc documentation for hiera-1.3.4...
==> default: Installing RDoc documentation for hiera-puppet-1.0.0...
==> default: Running provisioner: puppet...
==> default: Running Puppet with site.pp...
==> default: stdin: is not a tty
==> default: Error: Could not parse application options: invalid option: --manifestdir
The SSH command responded with a non-zero exit status. Vagrant
assumes that this means the command failed. The output for this command
should be in the log above. Please read the output to determine what
went wrong.
I tried to find a file that contains the --manifestdir option but I didn't find any. I also tried to apply the same patch as in https://github.com/joebew42/diaspora-replica/issues/10 but it didn't help.
I'd appreciate any help.
I think that this was caused by a gem behavior.
I changed the SHELL provisioner to fetch and install the deb repo and installed the Puppet package for Ubuntu and I got past this issue.
config.vm.provision "shell", inline: <<-SHELL
if [ ! -f /deb-get ]; then wget https://apt.puppetlabs.com/puppetlabs-release-trusty.deb && sudo touch /deb-get; fi
if [ ! -f /deb-run ]; then sudo dpkg -i puppetlabs-release-trusty.deb && sudo touch /deb-run; fi
if [ ! -f /apt-get-run ]; then sudo apt-get update && sudo touch /apt-get-run; fi
if [ ! -f /apt-get-puppet ]; then sudo apt-get install --yes --force-yes puppet && sudo touch /apt-get-puppet; fi
SHELL
config.vm.provision :puppet do |puppet|
puppet.manifests_path = "puppet"
puppet.manifest_file = "site.pp"
puppet.module_path = "puppet/modules"
puppet.hiera_config_path = "hiera.yaml"
puppet.options = "--verbose --debug"
puppet.working_directory = "/tmp/vagrant-puppet"
puppet.facter = [
['fdqn', config.vm.hostname],
['db_username', CONF['db_username']],
['db_password', CONF['db_password']],
['ssh_username', CONF['ssh_username']],
]
end
This left the following issues:
==> default: Warning: Could not retrieve fact fqdn
==> default: Error: Could not find class apt for piwik-trusty64 on node piwik-trusty64
==> default: Error: Could not find class apt for piwik-trusty64 on node piwik-trusty64
But those are issues that can be fairly easily fixed.
It seems that you're trying to run the puppet provisioner with puppet4 installed on the guest machine. The --manifestsdir option is now deprecated and will cause an error. You have to add several parameters to your Vagrantfile to tell Vagrant that you're using the 4th version of Puppet.
The solution to your problem is described here: https://github.com/mitchellh/vagrant/pull/5601
Unfortunately the Piwik dev-environment project isn't maintained and doesn't work (a lot of issues are open in the tracker).
I have opened a pull request to embedded the Vagrant configuration straigth into Piwik's repository (which hopefully would be simpler to use too). Please comment in the pull request if you find it useful: https://github.com/piwik/piwik/pull/8542
I'm hoping someone could please help because I don't know how to solve this!
I'm using Vagrant and VirtualBox to run a Chef recipe. Essentially the recipe will create a user on a windows 2012 machine.
My problem is however when I type vagrant reload --provision (or any other vagrant command apart from halt),
the host machine does the following:-
D:\cookbook-core>vagrant reload --provision
==> default: Loading Berkshelf datafile...
==> default: Sharing cookbooks with VM
==> default: Attempting graceful shutdown of VM...
==> default: Forcing shutdown of VM...
==> default: Clearing any previously set forwarded ports...
==> default: Updating Vagrant's Berkshelf...
==> default: Resolving cookbook dependencies...
==> default: Fetching 'core' from source at .
==> default: Using apt (2.6.1)
==> default: Using chef-client (4.2.4)
==> default: Using chef_handler (1.1.6)
==> default: Using chocolatey (0.2.1)
==> default: Using core (0.0.1) from source at .
==> default: Using cron (1.6.1)
==> default: Using hipchat (0.4.0)
==> default: Using hostsfile (2.4.5)
==> default: Using logrotate (1.8.0)
==> default: Using minitest-handler (1.3.2)
==> default: Using ms_dotnet2 (1.0.0)
==> default: Using ms_dotnet4 (1.0.2)
==> default: Using ms_dotnet45 (2.0.0)
==> default: Using ohai (2.0.2) from git#github.com:JustGiving/cookbook-ohai.git (at master)
==> default: Using powershell (3.0.7)
==> default: Using sudo (2.7.1)
==> default: Using sysctl (0.6.2)
==> default: Using users (1.7.0)
==> default: Using windows (1.36.6)
==> default: Vendoring apt (2.6.1) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/apt
==> default: Vendoring chef-client (4.2.4) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/chef-client
==> default: Vendoring chef_handler (1.1.6) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/chef_handler
==> default: Vendoring chocolatey (0.2.1) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/chocolatey
==> default: Vendoring core (0.0.1) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/core
==> default: Vendoring cron (1.6.1) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/cron
==> default: Vendoring hipchat (0.4.0) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/hipchat
==> default: Vendoring hostsfile (2.4.5) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/hostsfile
==> default: Vendoring logging (0.0.1) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/logging
==> default: Vendoring logrotate (1.8.0) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/logrotate
==> default: Vendoring minitest-handler (1.3.2) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/minitest-handler
==> default: Vendoring ms_dotnet2 (1.0.0) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/ms_dotnet2
==> default: Vendoring ms_dotnet4 (1.0.2) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/ms_dotnet4
==> default: Vendoring ms_dotnet45 (2.0.0) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/ms_dotnet45
==> default: Vendoring ohai (2.0.2) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/ohai
==> default: Vendoring powershell (3.0.7) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/powershell
==> default: Vendoring sudo (2.7.1) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/sudo
==> default: Vendoring sysctl (0.6.2) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/sysctl
==> default: Vendoring users (1.7.0) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/users
==> default: Vendoring windows (1.36.6) to c:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default/windows
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
==> default: Forwarding ports...
default: 22 => 2222 (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant
default: SSH auth method: private key
default: Warning: Connection timeout. Retrying...
default: Warning: Connection timeout. Retrying...
default: Warning: Connection timeout. Retrying...
==> default: Machine booted and ready!
GuestAdditions versions on your host (4.3.12) and guest (4.3.8) do not match.
The guest's platform is currently not supported, will try generic Linux method...
Downloading VirtualBox Guest Additions ISO from http://download.virtualbox.org/virtualbox/4.3.12/VBoxGuestAdditions_4.3.12.iso
Progress: 100% (Rate: 20.5M/s, Estimated time remaining: --:--:--)
Copy iso file C:/Users/aebirim/.vagrant.d/tmp/VBoxGuestAdditions_4.3.12.iso into the box /tmp/VBoxGuestAdditions.iso
/bin/sh: sudo: command not found
Installing Virtualbox Guest Additions unknown - guest version is 4.3.8
/bin/sh: sudo: command not found
/bin/sh: sudo: command not found
Cleaning up downloaded VirtualBox Guest Additions ISO...
bash.exe: warning: could not find /tmp, please create!
==> default: Checking for guest additions in VM...
==> default: Mounting shared folders...
default: /tmp/vagrant-chef/7ceb72d4e097eb60d8a5bb90970df99d/cookbooks => C:/Users/aebirim/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150312-3420-1mj6gii-default
This is my vagrantfile:-
Vagrant.configure(2) do |config|
config.vm.box = "win2012"
config.vm.box_url = "http://box.dev.ju.service/win2012.box"
config.winrm.username = "vagrant"
config.winrm.password = "vagrant"
config.vm.guest = :windows
config.windows.halt_timeout = 15
config.ssh.insert_key = false
config.vm.provider :virtualbox do |vb|
vb.gui = true
end
config.vm.provision :chef_zero do |chef|
chef.log_level = :info
chef.data_bags_path = 'data_bags'
#chef.provisioning_path = '/tmp/vagrant-chef-2'
#chef.environment = 'dev'
chef.encrypted_data_bag_secret_key_path = "D:/tmp/vagrant-chef-2/encrypted_data_bag_secret"
chef.run_list = [
"recipe[users]",
"recipe[core::default]"
]
end
end
The VM gets launched but as you can see from the output, Vagrant hangs permanently on mounting a shared folder (even when I disabled mounting according to the docs) and doesn't go past this part therefore chef-solo is not provisioned and my chef recipe isn't run. I'm running Vagrant 1.7.2 with VirtualBox 4.3.12. The VM I'm trying to create is a Windows 2012 box.
I'm having a problem with the chef-solo provisioner failing with the error
Chef::Exceptions::CookbookNotFound: Cookbook apt not found.
Any ideas on what could be going wrong here and how should I try to troubleshoot this?
Host: Windows 7 64bit, Guest: Ubuntu 12.04
Virtualbox 4.3.20
ChefDK 0.4.0
Vagrant 1.7.2
Vagrant plugins:
vagrant-berkshelf (4.0.2)
vagrant-omnibus (1.4.1)
vagrant-share (1.1.3, system)
Vagrant output:
PS C:\VagrantBoxes\mybox> vagrant reload --provision
default: The Berkshelf shelf is at "C:/Users/dmit77/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150208-6588-1a3oox5-default"
==> default: Sharing cookbooks with VM
==> default: Attempting graceful shutdown of VM...
==> default: Clearing any previously set forwarded ports...
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
==> default: Forwarding ports...
default: 22 => 2222 (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant
default: SSH auth method: private key
default: Warning: Connection timeout. Retrying...
==> default: Machine booted and ready!
==> default: Checking for guest additions in VM...
default: The guest additions on this VM do not match the installed version of
default: VirtualBox! In most cases this is fine, but in rare cases it can
default: prevent things such as shared folders from working properly. If you see
default: shared folder errors, please make sure the guest additions within the
default: virtual machine match the version of VirtualBox you have installed on
default: your host and reload your VM.
default:
default: Guest Additions Version: 4.2.12
default: VirtualBox Version: 4.3
==> default: Mounting shared folders...
default: /vagrant => C:/VagrantBoxes/mybox
default: /tmp/vagrant-chef/7159cf65a6eea91634c03008165d96a8/cookbooks => C:/Users/dkrantsber/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150208-6588-1a3oox5-default
==> default: Running provisioner: chef_solo...
==> default: Detected Chef (latest) is already installed
Generating chef JSON and uploading...
==> default: Running chef-solo...
==> default: stdin: is not a tty
==> default: [2015-02-08T05:09:07+00:00] INFO: *** Chef 11.4.0 ***
==> default: [2015-02-08T05:09:08+00:00] INFO: Setting the run_list to ["recipe[apt]", "recipe[apache2]"] from JSON
==> default: [2015-02-08T05:09:08+00:00] INFO: Run List is [recipe[apt], recipe[apache2]]
==> default: [2015-02-08T05:09:08+00:00] INFO: Run List expands to [apt, apache2]
==> default: [2015-02-08T05:09:08+00:00] INFO: Starting Chef Run for vagrant.vm
==> default: [2015-02-08T05:09:08+00:00] INFO: Running start handlers
==> default: [2015-02-08T05:09:08+00:00] INFO: Start handlers complete.
==> default: [2015-02-08T05:09:08+00:00] ERROR: Running exception handlers
==> default: [2015-02-08T05:09:08+00:00] ERROR: Exception handlers complete
==> default: [2015-02-08T05:09:08+00:00] FATAL: Stacktrace dumped to /var/chef/cache/chef-stacktrace.out
==> default: [2015-02-08T05:09:08+00:00] FATAL: Chef::Exceptions::CookbookNotFound: Cookbook apt not found. If you're loading apache2 from another cookbook, make sure you confi
Chef never successfully completed! Any errors should be visible in the
output above. Please fix your recipes so that they properly complete.
Vagrant file:
Vagrant.configure("2") do |config|
config.vm.box = "opscode-ubuntu-12.04_chef-11.4.0"
config.vm.box_url = "https://opscode-vm-bento.s3.amazonaws.com/vagrant/opscode_ubuntu-12.04_chef-11.4.0.box"
config.ssh.forward_agent = true
config.vm.provision :chef_solo do |chef|
chef.cookbooks_path = ["cookbooks"]
chef.add_recipe :'apt'
chef.add_recipe 'apache2'
chef.json = {
:apache => {
:default_site_enabled => "true",
:dir => "/etc/apache2",
:log_dir => "/var/log/apache2",
:error_log => "error.log"
}
}
end
end
Folder structure:
[my_box]
[cookbooks]
[apt]
[apache2]
Vagrantfile
I finally came across the solution. It turns out that vagrant-berkshelf plugin is the problem. Uninstalling it resolves the issue.
Vagrant & Chef - Cookbook *** not found
Ive been struggling with this for hours and dont seem to be making any progress. Any tips on where I should start debugging this would be appreciated.
I am attempting to provision a vagrant machine and get the following error.
`==> default: Running provisioner: chef_solo...
Generating chef JSON and uploading...
==> default: Running chef-solo...
==> default: stdin: is not a tty
==> default: [2014-05-14T11:16:08+00:00] INFO: *** Chef 10.14.2 ***
==> default: [2014-05-14T11:16:08+00:00] INFO: Setting the run_list to ["recipe[nginx]"] from JSON
==> default: [2014-05-14T11:16:08+00:00] INFO: Run List is [recipe[nginx]]
==> default: [2014-05-14T11:16:08+00:00] INFO: Run List expands to [nginx]
==> default: [2014-05-14T11:16:08+00:00] INFO: Starting Chef Run for precise64
==> default: [2014-05-14T11:16:08+00:00] INFO: Running start handlers
==> default: [2014-05-14T11:16:08+00:00] INFO: Start handlers complete.
==> default:
==> default: ================================================================================
==> default: Recipe Compile Error in /tmp/vagrant-chef-3/chef-solo-1/cookbooks/build-essential/libraries/xcode_command_line_tools.rb
==> default: ================================================================================
==> default:
==> default: NameError
==> default: ---------
==> default: uninitialized constant Chef::Resource::LWRPBase
==> default:
==> default: Cookbook Trace:
==> default: ---------------
==> default: /tmp/vagrant-chef-3/chef-solo-1/cookbooks/build-essential/libraries/xcode_command_line_tools.rb:21
==> default:
==> default: Relevant File Content:
==> default: ----------------------
==> default: /tmp/vagrant-chef-3/chef-solo-1/cookbooks/build-essential/libraries/xcode_command_line_tools.rb:
==> default:
==> default: 1: #
==> default: 2: # Cookbook Name:: build-essential
==> default: 3: # Library:: xcode_command_line_tools
==> default: 4: #
==> default: 5: # Copyright 2014, Chef Software, Inc.
==> default: 6: #
==> default: 7: # Licensed under the Apache License, Version 2.0 (the "License");
==> default: 8: # you may not use this file except in compliance with the License.
==> default: 9: # You may obtain a copy of the License at
==> default: [2014-05-14T11:16:09+00:00] ERROR: Running exception handlers
==> default: [2014-05-14T11:16:09+00:00] ERROR: Exception handlers complete
==> default: [2014-05-14T11:16:09+00:00] FATAL: Stacktrace dumped to /var/chef/cache/chef-stacktrace.out
==> default: [2014-05-14T11:16:09+00:00] FATAL: NameError: uninitialized constant Chef::Resource::LWRPBase
Chef never successfully completed! Any errors should be visible in the
output above. Please fix your recipes so that they properly complete.`
I am using the berkshelf-vagrant plugin with vagrant
Vagrant 1.6.2
My vagrant file has the following:
config.vm.provision :chef_solo do |chef|
chef.run_list = [
"recipe[nginx]"
]
end
You are using a very old version of Chef. You might want to use vagrant-omnibus to install a more modern Chef version in your box.
Your issue looks very similar to COOK-4441. Reason: Chef 10, while 11 is required.