From fdce74475c2c9add9aaf2d2183dd0c47bfe949a0 Mon Sep 17 00:00:00 2001 From: Jonathan Collins Date: Fri, 14 Nov 2014 19:31:19 -0800 Subject: [PATCH 01/58] typo --- website/docs/source/v2/share/connect.html.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/source/v2/share/connect.html.md b/website/docs/source/v2/share/connect.html.md index 37a3bf8e9..c7074d675 100644 --- a/website/docs/source/v2/share/connect.html.md +++ b/website/docs/source/v2/share/connect.html.md @@ -29,7 +29,7 @@ machines. `vagrant connect` creates a tiny virtual machine that takes up only around 20 MB in RAM, using VirtualBox or VMware (more provider support is coming soon). -Any traffic sent to this tiny virtual machine is then proxies through to +Any traffic sent to this tiny virtual machine is then proxied through to the shared Vagrant environment as if it were directed at it. ## Beware: Vagrant Insecure Key From 17673fafcd81ab2562f5810d14a145614af9c8a7 Mon Sep 17 00:00:00 2001 From: Emilien Kenler Date: Tue, 18 Nov 2014 11:05:59 +0900 Subject: [PATCH 02/58] You need to press enter to migrate from 1.1 to 1.5 --- templates/locales/en.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/locales/en.yml b/templates/locales/en.yml index 81365587d..837f522e1 100644 --- a/templates/locales/en.yml +++ b/templates/locales/en.yml @@ -243,7 +243,7 @@ en: Press ctrl-c now to exit if you want to remove some boxes or free up some disk space. - Press any other key to continue. + Press the Enter or Return key to continue. version_current: |- Installed Version: %{version} version_latest: |- From 5ae5690d66207db72e8a2c50def69c221d83aea2 Mon Sep 17 00:00:00 2001 From: Dharma Bellamkonda Date: Fri, 28 Nov 2014 12:59:20 -0700 Subject: [PATCH 03/58] clarify documentation of docker.link() --- website/docs/source/v2/docker/configuration.html.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/website/docs/source/v2/docker/configuration.html.md b/website/docs/source/v2/docker/configuration.html.md index a8dfed3c7..73bde2df3 100644 --- a/website/docs/source/v2/docker/configuration.html.md +++ b/website/docs/source/v2/docker/configuration.html.md @@ -36,7 +36,8 @@ General settings: but not to the host machine. Useful for links. * `link` (method, string argument) - Link this container to another - by name. Example: `docker.link("db:db")`. Note, if you're linking to + by name. The argument should be in the format of `(name:alias)`. + Example: `docker.link("db:db")`. Note, if you're linking to another container in the same Vagrantfile, make sure you call `vagrant up` with the `--no-parallel` flag. From 72afdce6305aa3564a065f0457b1dd38db3939e2 Mon Sep 17 00:00:00 2001 From: Ken Crowell Date: Tue, 2 Dec 2014 17:25:30 -0400 Subject: [PATCH 04/58] Issue #4895: Support grains config for salt --- plugins/provisioners/salt/config.rb | 10 ++++++++++ plugins/provisioners/salt/provisioner.rb | 7 ++++++- templates/locales/en.yml | 2 ++ .../plugins/provisioners/salt/config_test.rb | 18 ++++++++++++++++++ .../docs/source/v2/provisioning/salt.html.md | 3 ++- 5 files changed, 38 insertions(+), 2 deletions(-) diff --git a/plugins/provisioners/salt/config.rb b/plugins/provisioners/salt/config.rb index 0a99d3fc8..4d97d942c 100644 --- a/plugins/provisioners/salt/config.rb +++ b/plugins/provisioners/salt/config.rb @@ -12,6 +12,7 @@ module VagrantPlugins attr_accessor :master_config attr_accessor :master_key attr_accessor :master_pub + attr_accessor :grains_config attr_accessor :run_highstate attr_accessor :run_overstate attr_accessor :always_install @@ -38,6 +39,7 @@ module VagrantPlugins @master_config = UNSET_VALUE @master_key = UNSET_VALUE @master_pub = UNSET_VALUE + @grains_config = UNSET_VALUE @run_highstate = UNSET_VALUE @run_overstate = UNSET_VALUE @always_install = UNSET_VALUE @@ -63,6 +65,7 @@ module VagrantPlugins @master_config = nil if @master_config == UNSET_VALUE @master_key = nil if @master_key == UNSET_VALUE @master_pub = nil if @master_pub == UNSET_VALUE + @grains_config = nil if @grains_config == UNSET_VALUE @run_highstate = nil if @run_highstate == UNSET_VALUE @run_overstate = nil if @run_overstate == UNSET_VALUE @always_install = nil if @always_install == UNSET_VALUE @@ -115,6 +118,13 @@ module VagrantPlugins end end + if @grains_config + expanded = Pathname.new(@grains_config).expand_path(machine.env.root_path) + if !expanded.file? + errors << I18n.t("vagrant.provisioners.salt.grains_config_nonexist") + end + end + if @install_master && !@no_minion && !@seed_master && @run_highstate errors << I18n.t("vagrant.provisioners.salt.must_accept_keys") end diff --git a/plugins/provisioners/salt/provisioner.rb b/plugins/provisioners/salt/provisioner.rb index c5db597a0..d7596a1ec 100644 --- a/plugins/provisioners/salt/provisioner.rb +++ b/plugins/provisioners/salt/provisioner.rb @@ -75,7 +75,7 @@ module VagrantPlugins end def need_configure - @config.minion_config or @config.minion_key or @config.master_config or @config.master_key + @config.minion_config or @config.minion_key or @config.master_config or @config.master_key or @config.grains_config end def need_install @@ -181,6 +181,11 @@ module VagrantPlugins @machine.env.ui.info "Copying salt master config to vm." @machine.communicate.upload(expanded_path(@config.master_config).to_s, temp_config_dir + "/master") end + + if @config.grains_config + @machine.env.ui.info "Copying salt grains config to vm." + @machine.communicate.upload(expanded_path(@config.grains_config).to_s, temp_config_dir + "/grains") + end end # Copy master and minion keys to VM diff --git a/templates/locales/en.yml b/templates/locales/en.yml index 72124f7e9..f475f8296 100644 --- a/templates/locales/en.yml +++ b/templates/locales/en.yml @@ -1888,6 +1888,8 @@ en: The specified minion_config file could not be found. master_config_nonexist: |- The specified master_config file could not be found. + grains_config_nonexist: |- + The specified grains_config file could not be found. missing_key: |- You must include both public and private keys. must_accept_keys: |- diff --git a/test/unit/plugins/provisioners/salt/config_test.rb b/test/unit/plugins/provisioners/salt/config_test.rb index c640a7497..24bf24796 100644 --- a/test/unit/plugins/provisioners/salt/config_test.rb +++ b/test/unit/plugins/provisioners/salt/config_test.rb @@ -60,5 +60,23 @@ describe VagrantPlugins::Salt::Config do expect(result[error_key]).to be_empty end end + + context "grains_config" do + it "fails if grains_config is set and missing" do + subject.grains_config = "/nope/still/not/here" + subject.finalize! + + result = subject.validate(machine) + expect(result[error_key]).to_not be_empty + end + + it "is valid if is set and not missing" do + subject.grains_config = File.expand_path(__FILE__) + subject.finalize! + + result = subject.validate(machine) + expect(result[error_key]).to be_empty + end + end end end diff --git a/website/docs/source/v2/provisioning/salt.html.md b/website/docs/source/v2/provisioning/salt.html.md index f66ac7c60..ddc81fa90 100644 --- a/website/docs/source/v2/provisioning/salt.html.md +++ b/website/docs/source/v2/provisioning/salt.html.md @@ -56,7 +56,7 @@ on this machine. Not supported on Windows. `false`. Not supported on Windows. * `install_type` (stable | git | daily | testing) - Whether to install from a -distribution's stable package manager, git tree-ish, daily ppa, or testing repository. +distribution's stable package manager, git tree-ish, daily ppa, or testing repository. Not supported on Windows. * `install_args` (develop) - When performing a git install, @@ -77,6 +77,7 @@ a custom salt minion config file. * `minion_pub` (salt/key/minion.pub) - Path to your minion public key +* `grains_config` (string) - Path to a custom salt grains file. ## Master Options These only make sense when `install_master` is `true`. From 40a22ff99a2fd46b3a2a6e7f574b9bf75210c974 Mon Sep 17 00:00:00 2001 From: Gilles Cornu Date: Sun, 7 Dec 2014 11:02:50 +0100 Subject: [PATCH 05/58] providers/docker: fix support of agent forwarding --- .../providers/docker/action/prepare_ssh.rb | 7 ++++++- plugins/providers/docker/communicator.rb | 21 +++++++++++-------- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/plugins/providers/docker/action/prepare_ssh.rb b/plugins/providers/docker/action/prepare_ssh.rb index 1a7298a66..450b139c6 100644 --- a/plugins/providers/docker/action/prepare_ssh.rb +++ b/plugins/providers/docker/action/prepare_ssh.rb @@ -19,14 +19,19 @@ module VagrantPlugins # Modify the SSH options for when we `vagrant ssh`... ssh_opts = env[:ssh_opts] || {} - # Build the command we'll execute within the host machine + # Build the command we'll execute within the Docker host machine: ssh_command = env[:machine].communicate.container_ssh_command if !Array(ssh_opts[:extra_args]).empty? ssh_command << " #{Array(ssh_opts[:extra_args]).join(" ")}" end + # Modify the SSH options for the original command: # Append "-t" to force a TTY allocation ssh_opts[:extra_args] = ["-t"] + # Enable Agent forwarding when requested for the target VM + if env[:machine].ssh_info[:forward_agent] + ssh_opts[:extra_args] << "-o ForwardAgent=yes" + end ssh_opts[:extra_args] << ssh_command # Set the opts diff --git a/plugins/providers/docker/communicator.rb b/plugins/providers/docker/communicator.rb index 657789575..fb6c9fe9e 100644 --- a/plugins/providers/docker/communicator.rb +++ b/plugins/providers/docker/communicator.rb @@ -137,18 +137,21 @@ module VagrantPlugins info[:port] ||= 22 # Make sure our private keys are synced over to the host VM - key_args = sync_private_keys(info).map do |path| + ssh_args = sync_private_keys(info).map do |path| "-i #{path}" - end.join(" ") + end + + # Use ad-hoc SSH options for the hop on the docker proxy + if info[:forward_agent] + ssh_args << "-o ForwardAgent=yes" + end + ssh_args.concat(["-o Compression=yes", + "-o ConnectTimeout=5", + "-o StrictHostKeyChecking=no", + "-o UserKnownHostsFile=/dev/null"]) # Build the SSH command - "ssh #{key_args} " + - "-o Compression=yes " + - "-o ConnectTimeout=5 " + - "-o StrictHostKeyChecking=no " + - "-o UserKnownHostsFile=/dev/null " + - "-p#{info[:port]} " + - "#{info[:username]}@#{info[:host]}" + "ssh #{info[:username]}@#{info[:host]} -p#{info[:port]} #{ssh_args.join(" ")}" end protected From 0a64b0c4e18ca9ee0db5def530a09e97ad1feaa0 Mon Sep 17 00:00:00 2001 From: Gilles Cornu Date: Sun, 7 Dec 2014 11:14:21 +0100 Subject: [PATCH 06/58] Update CHANGELOG: fix docker agent forwarding Ref GH-4905 --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 53565b085..002ad9a86 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -82,6 +82,7 @@ BUG FIXES: - providers/docker: Fix issue where multiple identical proxy VMs would be created. [GH-3963] - providers/docker: Multiple links with the same name work. [GH-4571] + - providers/docker: Add support of SSH agent forwarding. [GH-4905] - providers/virtualbox: Show a human-friendly error if VirtualBox didn't clean up an existing VM. [GH-4681] - providers/virtualbox: Detect case when VirtualBox reports 0.0.0.0 as From 118e223c330b4e7308d41da3b333cd8615347525 Mon Sep 17 00:00:00 2001 From: Gilles Cornu Date: Sun, 7 Dec 2014 10:40:21 +0100 Subject: [PATCH 07/58] provisioners/ansible: use Docker proxy when needed Close #4071 Credits and best thanks to @jabclab --- CHANGELOG.md | 1 + plugins/provisioners/ansible/provisioner.rb | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 42e753943..e99c4382b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -97,6 +97,7 @@ BUG FIXES: - provisioners/ansible: Force `ssh` (OpenSSH) connection by default [GH-3396] - provisioners/ansible: Don't use or modify `~/.ssh/known_hosts` file by default, similarly to native vagrant commands [GH-3900] + - provisioners/ansible: Use intermediate Docker host when needed. [GH-4071] - provisioners/docker: Get GPG key over SSL. [GH-4597] - provisioners/docker: Search for docker binary in multiple places. [GH-4580] - provisioners/salt: Highstate works properly with a master. [GH-4471] diff --git a/plugins/provisioners/ansible/provisioner.rb b/plugins/provisioners/ansible/provisioner.rb index 49015997b..eea544abe 100644 --- a/plugins/provisioners/ansible/provisioner.rb +++ b/plugins/provisioners/ansible/provisioner.rb @@ -188,6 +188,24 @@ module VagrantPlugins def get_ansible_ssh_args ssh_options = [] + # Use an SSH ProxyCommand when using the Docker provider with the intermediate host + if @machine.provider_name == :docker && machine.provider.host_vm? + docker_host_ssh_info = machine.provider.host_vm.ssh_info + + proxy_cmd = "ssh #{docker_host_ssh_info[:username]}@#{docker_host_ssh_info[:host]}" + + " -p #{docker_host_ssh_info[:port]} -i #{docker_host_ssh_info[:private_key_path][0]}" + + # Use same options than plugins/providers/docker/communicator.rb + # Note: this could be improved (DRY'ed) by sharing these settings. + proxy_cmd += " -o Compression=yes -o ConnectTimeout=5 -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no" + + proxy_cmd += " -o ForwardAgent=yes" if @ssh_info[:forward_agent] + + proxy_cmd += " exec nc %h %p 2>/dev/null" + + ssh_options << "-o ProxyCommand='#{ proxy_cmd }'" + end + # Don't access user's known_hosts file, except when host_key_checking is enabled. ssh_options << "-o UserKnownHostsFile=/dev/null" unless config.host_key_checking From 9a575a79ec45db1fe93816a823294170999fc659 Mon Sep 17 00:00:00 2001 From: Seth Vargo Date: Thu, 11 Dec 2014 01:21:46 -0800 Subject: [PATCH 08/58] Use the new Rails error format --- plugins/commands/login/client.rb | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/plugins/commands/login/client.rb b/plugins/commands/login/client.rb index f06772be9..0e28bc374 100644 --- a/plugins/commands/login/client.rb +++ b/plugins/commands/login/client.rb @@ -75,10 +75,7 @@ module VagrantPlugins false rescue RestClient::NotAcceptable => e begin - errors = JSON.parse(e.response)["errors"] - .map { |h| h["message"] } - .join("\n") - + errors = JSON.parse(e.response)["errors"].join("\n") raise Errors::ServerError, errors: errors rescue JSON::ParserError; end From 68d82349ddb2ca67ce09439241d38c6d5f5544c4 Mon Sep 17 00:00:00 2001 From: Seth Vargo Date: Thu, 11 Dec 2014 11:15:24 -0800 Subject: [PATCH 09/58] Fix failing test --- test/unit/plugins/pushes/ftp/push_test.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/unit/plugins/pushes/ftp/push_test.rb b/test/unit/plugins/pushes/ftp/push_test.rb index ca8ee2752..5b5ec7c10 100644 --- a/test/unit/plugins/pushes/ftp/push_test.rb +++ b/test/unit/plugins/pushes/ftp/push_test.rb @@ -9,7 +9,7 @@ describe VagrantPlugins::FTPPush::Push do let(:env) { isolated_environment } let(:config) do double("config", - host: "127.0.0.1:21212", + host: "127.0.0.1:51234", username: "sethvargo", password: "bacon", passive: false, @@ -22,7 +22,7 @@ describe VagrantPlugins::FTPPush::Push do describe "#push" do before(:all) do - @server = FakeFtp::Server.new(21212, 21213) + @server = FakeFtp::Server.new(51234, 21213) @server.start @dir = Dir.mktmpdir From 6cae92a200b1d231056bbe3c4aae79bc7743838a Mon Sep 17 00:00:00 2001 From: Seth Vargo Date: Thu, 11 Dec 2014 16:47:50 -0800 Subject: [PATCH 10/58] Cleanup generated Vagrantfile --- templates/commands/init/Vagrantfile.erb | 143 +++--------------------- 1 file changed, 13 insertions(+), 130 deletions(-) diff --git a/templates/commands/init/Vagrantfile.erb b/templates/commands/init/Vagrantfile.erb index 710e61664..c3f32fc00 100644 --- a/templates/commands/init/Vagrantfile.erb +++ b/templates/commands/init/Vagrantfile.erb @@ -8,9 +8,10 @@ Vagrant.configure(2) do |config| # The most common configuration options are documented and commented below. # For a complete reference, please see the online documentation at - # vagrantup.com + # https://docs.vagrantup.com. - # Every Vagrant virtual environment requires a box to build off of. + # Every Vagrant development environment requires a box. You can search for + # boxes at https://atlas.hashicorp.com/search. config.vm.box = "<%= box_name %>" <% if box_url -%> @@ -38,10 +39,6 @@ Vagrant.configure(2) do |config| # your network. # config.vm.network "public_network" - # If true, then any SSH connections made will enable agent forwarding. - # Default value: false - # config.ssh.forward_agent = true - # Share an additional folder to the guest VM. The first argument is # the path on the host to the actual folder. The second argument is # the path on the guest to mount the folder. And the optional third @@ -53,134 +50,20 @@ Vagrant.configure(2) do |config| # Example for VirtualBox: # # config.vm.provider "virtualbox" do |vb| - # # Don't boot with headless mode + # # Display the VirtualBox GUI when booting the machine # vb.gui = true # - # # Use VBoxManage to customize the VM. For example to change memory: - # vb.customize ["modifyvm", :id, "--memory", "1024"] + # # Customize the amount of memory on the VM: + # vb.memory = "1024" # end # - # View the documentation for the provider you're using for more + # View the documentation for the provider you are using for more # information on available options. - # Enable provisioning with CFEngine. CFEngine Community packages are - # automatically installed. For example, configure the host as a - # policy server and optionally a policy file to run: - # - # config.vm.provision "cfengine" do |cf| - # cf.am_policy_hub = true - # # cf.run_file = "motd.cf" - # end - # - # You can also configure and bootstrap a client to an existing - # policy server: - # - # config.vm.provision "cfengine" do |cf| - # cf.policy_server_address = "10.0.2.15" - # end - - # Enable provisioning with Puppet stand alone. Puppet manifests - # are contained in a directory path relative to this Vagrantfile. - # You will need to create the manifests directory and a manifest in - # the file default.pp in the manifests_path directory. - # - # config.vm.provision "puppet" do |puppet| - # puppet.manifests_path = "manifests" - # puppet.manifest_file = "default.pp" - # end - - # Enable provisioning with Chef Solo, specifying a cookbooks path, roles - # path, and data_bags path (all relative to this Vagrantfile), and adding - # some recipes and/or roles. - # - # config.vm.provision "chef_solo" do |chef| - # chef.cookbooks_path = "~/chef/cookbooks" - # chef.roles_path = "~/chef/roles" - # chef.data_bags_path = "~/chef/data_bags" - # - # chef.add_recipe "mysql" - # chef.add_role "web" - # - # chef.json = { mysql_password: "foo" } - # end - # - # Chef Solo will automatically install the latest version of Chef for you. - # This can be configured in the provisioner block: - # - # config.vm.provision "chef_solo" do |chef| - # chef.version = "11.16.4" - # end - # - # Alternative you can disable the installation of Chef entirely: - # - # config.vm.provision "chef_solo" do |chef| - # chef.install = false - # end - - # Enable provisioning with Chef Zero. The Chef Zero provisioner accepts the - # exact same parameter as the Chef Solo provisioner: - # - # config.vm.provision "chef_zero" do |chef| - # chef.cookbooks_path = "~/chef/cookbooks" - # chef.roles_path = "~/chef/roles" - # chef.data_bags_path = "~/chef/data_bags" - # - # chef.add_recipe "mysql" - # chef.add_role "web" - # - # # You may also specify custom JSON attributes: - # chef.json = { mysql_password: "foo" } - # end - - # Enable provisioning with Chef Server, specifying the chef server URL, - # and the path to the validation key (relative to this Vagrantfile). - # - # The Hosted Chef platform uses HTTPS. Substitute your organization for - # ORGNAME in the URL and validation key. - # - # If you have your own Chef Server, use the appropriate URL, which may be - # HTTP instead of HTTPS depending on your configuration. Also change the - # validation key to validation.pem. - # - # config.vm.provision "chef_client" do |chef| - # chef.chef_server_url = "https://api.opscode.com/organizations/ORGNAME" - # chef.validation_key_path = "ORGNAME-validator.pem" - # end - # - # If you're using the Hosted Chef platform, your validator client is - # ORGNAME-validator, replacing ORGNAME with your organization name. - # - # If you have your own Chef Server, the default validation client name is - # chef-validator, unless you changed the configuration. - # - # chef.validation_client_name = "ORGNAME-validator" - # - # Chef Client will automatically install the latest version of Chef for you. - # This can be configured in the provisioner block: - # - # config.vm.provision "chef_client" do |chef| - # chef.version = "11.16.4" - # end - # - # Alternative you can disable the installation of Chef entirely: - # - # config.vm.provision "chef_client" do |chef| - # chef.install = false - # end - - # Enable provisioning with Chef Apply, specifying an inline recipe to execute - # on the target system. - # - # config.vm.provision "chef_apply" do |chef| - # chef.recipe = <<-RECIPE - # package "curl" - # RECIPE - # end - # - # Chef Apply will automatically install the latest version of Chef for you. - # This can be configured in the provisioner block: - # - # config.vm.provision "chef_apply" do |chef| - # chef.version = "11.16.4" - # end + # Enable provisioning with a shell script. Additional provisioners such as + # Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the + # documentation for more information about their specific syntax and use. + # config.vm.provision "shell", inline <<-SHELL + # sudo apt-get install apache2 + # SHELL end From 0dcdc2312ba3b6a5270467602bdd6dc8361741fc Mon Sep 17 00:00:00 2001 From: Seth Vargo Date: Thu, 11 Dec 2014 16:48:20 -0800 Subject: [PATCH 11/58] Remove editor comments from min Vagrantfile --- templates/commands/init/Vagrantfile.min.erb | 3 --- 1 file changed, 3 deletions(-) diff --git a/templates/commands/init/Vagrantfile.min.erb b/templates/commands/init/Vagrantfile.min.erb index 6120ce0e4..ac70f5e7c 100644 --- a/templates/commands/init/Vagrantfile.min.erb +++ b/templates/commands/init/Vagrantfile.min.erb @@ -1,6 +1,3 @@ -# -*- mode: ruby -*- -# vi: set ft=ruby : - Vagrant.configure(2) do |config| config.vm.box = "<%= box_name %>" <% if box_url -%> From b590ee2b3a3f96da042d28d7df20b4296f73e628 Mon Sep 17 00:00:00 2001 From: Seth Vargo Date: Thu, 11 Dec 2014 16:50:56 -0800 Subject: [PATCH 12/58] Add push example --- templates/commands/init/Vagrantfile.erb | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/templates/commands/init/Vagrantfile.erb b/templates/commands/init/Vagrantfile.erb index c3f32fc00..4fbb647c8 100644 --- a/templates/commands/init/Vagrantfile.erb +++ b/templates/commands/init/Vagrantfile.erb @@ -60,6 +60,13 @@ Vagrant.configure(2) do |config| # View the documentation for the provider you are using for more # information on available options. + # Define a Vagrant Push strategy for pushing to Atlas. Other push strategies + # such as FTP and Heroku are also available. See the documentation at + # https://docs.vagrantup.com/v2/push/atlas.html for more information. + # config.push.define "atlas" do |push| + # push.app = "YOUR_ATLAS_USERNAME/YOUR_APPLICATION_NAME" + # end + # Enable provisioning with a shell script. Additional provisioners such as # Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the # documentation for more information about their specific syntax and use. From b6deb6bc286accd73b8bb08b90fe7be05adec458 Mon Sep 17 00:00:00 2001 From: Joel Handwell Date: Thu, 11 Dec 2014 20:08:33 -0500 Subject: [PATCH 13/58] added chec_zero page to be shown in sidebar --- website/docs/source/layouts/layout.erb | 1 + 1 file changed, 1 insertion(+) diff --git a/website/docs/source/layouts/layout.erb b/website/docs/source/layouts/layout.erb index 8a1883920..310d7b0a8 100644 --- a/website/docs/source/layouts/layout.erb +++ b/website/docs/source/layouts/layout.erb @@ -173,6 +173,7 @@ >Ansible >CFEngine >Chef Solo + >Chef Zero >Chef Client >Chef Apply >Docker From 90a12ee476cb26e5bdc91d9f11640e5ab6a431c7 Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Thu, 11 Dec 2014 17:22:05 -0800 Subject: [PATCH 14/58] Update CHANGELOG --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 18b79cc43..864eac776 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +## 1.7.1 (December 11, 2014) + +IMPROVEMENTS: + + - provisioners/ansible: Use Docker proxy if needed. [GH-4906] + ## 1.7.0 (December 9, 2014) BREAKING CHANGES: From a3abdadc1c809ecc045b348bffbd772ff23a7eef Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Thu, 11 Dec 2014 17:24:54 -0800 Subject: [PATCH 15/58] Update CHANGELOG --- CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 864eac776..3340fd82d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,10 @@ IMPROVEMENTS: - provisioners/ansible: Use Docker proxy if needed. [GH-4906] +BUG FIXES: + + - providers/docker: Add support of SSH agent forwarding. [GH-4905] + ## 1.7.0 (December 9, 2014) BREAKING CHANGES: @@ -99,7 +103,6 @@ BUG FIXES: - providers/docker: Fix issue where multiple identical proxy VMs would be created. [GH-3963] - providers/docker: Multiple links with the same name work. [GH-4571] - - providers/docker: Add support of SSH agent forwarding. [GH-4905] - providers/virtualbox: Show a human-friendly error if VirtualBox didn't clean up an existing VM. [GH-4681] - providers/virtualbox: Detect case when VirtualBox reports 0.0.0.0 as From 1f98237386e23724b8ecd1dff14aed8657244d62 Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Thu, 11 Dec 2014 17:34:51 -0800 Subject: [PATCH 16/58] v1.7.1 --- version.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.txt b/version.txt index bd8bf882d..943f9cbc4 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -1.7.0 +1.7.1 From fa7131ff6e8f4107be94777fb5caf73521422965 Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Fri, 12 Dec 2014 00:49:42 -0800 Subject: [PATCH 17/58] website/www: fix Vagrantfile --- website/www/Vagrantfile | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/website/www/Vagrantfile b/website/www/Vagrantfile index 7ce24fe70..2d8d8c9b4 100644 --- a/website/www/Vagrantfile +++ b/website/www/Vagrantfile @@ -4,13 +4,11 @@ $script = <