Commit Graph

2150 Commits

Author SHA1 Message Date
Seth Vargo 6a3d99a9a2 Output to the UI when uploading via FTP 2015-01-04 18:06:32 -05:00
Seth Vargo 50c1c0756e Expand file paths relative to the root_path 2015-01-04 18:06:22 -05:00
Seth Vargo fd3c1c6ebb Add a logger when uploading to FTP 2015-01-04 18:06:05 -05:00
Seth Vargo e330875303 Exclude certain directories by default 2015-01-04 18:05:46 -05:00
Seth Vargo e7391359e8 Remove duplicate #parse_host method 2015-01-04 18:05:17 -05:00
Seth Vargo 944853ab47 Use 21 for the default port 2015-01-04 16:24:26 -05:00
Tomas Srnka 2620042c26 Fix catching "Start-VM" exceptions on Hyper-V during starting up VM 2015-01-04 00:05:50 +01:00
William Kolean 084d2c06de enable symlinks before adding shared folder 2015-01-01 16:00:17 -05:00
Evgeny Vereshchagin 43bb715c00 Enable provision with --provision-with flag 2014-12-30 06:10:52 +03:00
Seth Vargo 97d5a6ebfc Log chef-zero instead of chef-solo 2014-12-28 12:52:54 -05:00
evverx 1cfc5acea3 Update Chef plugin description 2014-12-24 03:53:29 +03:00
Masahiro Ono 55a90445cd Fix new-style Network Device Naming on CentOS7+VMwarefusion 2014-12-21 16:25:11 +09:00
Mikhail Zholobov e828927cee providers/virtualbox: Add 'post-comm' to the list of valid events 2014-12-21 01:09:55 +03:00
Seth Vargo 5efb30653e Merge pull request #4898 from athak/patch-solaris-rsync
rsynced folders don't work with Solaris based OS
2014-12-18 10:30:13 -05:00
Torben Knerr f2b494c2cc don't forget to pass the `installer_download_path` from the config! 2014-12-17 00:48:34 +01:00
Torben Knerr acc4e3806f pass the `download_path` parameter to the `:chef_install` capability so it is available when `Omnibus.build_command(..)` is invoked 2014-12-16 23:40:22 +01:00
Torben Knerr d7bd65b4e2 extend the omnibus command builder with an additional download_path parameter 2014-12-16 23:29:47 +01:00
Torben Knerr 9e7f705bad extend the Chef provisioner base config object with an 'installer_download_path' property 2014-12-16 22:40:19 +01:00
Shawn Neal 2785fd14db Merge pull request #4996 from mitchellh/4976-fix-guest-autodetection-with-windows-guests
4976 fix guest autodetection with windows guests
2014-12-16 11:47:05 -08:00
Seth Vargo 954289beb6 Use new Chef Omnibus URL 2014-12-16 12:16:08 -05:00
Shawn Neal c4422d7c70 Fix guest autodetection when running windows guests so Vagrant doesn't think the guest is Ubuntu 2014-12-16 08:20:01 -08:00
Barry Kelly 185740163c Don't reorder config in /etc/network/interfaces 2014-12-15 19:21:22 +00:00
Seth Vargo bce0d1acc9 Pushes are strings 2014-12-15 01:29:58 -05:00
Mitchell Hashimoto 4efb401050 kernel/v2: push config keys on strategy
/cc @sethvargo - This adds more tests that fail if this change isn't in
place.
2014-12-14 22:24:14 -08:00
Seth Vargo 8c8a92c4be Merge pull request #4896 from analyzere/salt-grains-config
Issue #4895: Support grains config for salt
2014-12-14 23:48:02 -05:00
Seth Vargo c0d4b39eea Force opts to be options
cb6f3e5 introduced a change to the method airty of machine actions to remove the
`extra_env` attribute.

- Fixes #4960
2014-12-14 23:46:39 -05:00
Seth Vargo 214a79e057 Pushes are hashed by name, not strategy.
@mitchellh this is a partial revert of 84ae22e. It took me a little bit
to figure out why this broke everything, but then I finally realized it.

84ae22e changes the finalize! function to lookup pushes by strategy
type, but pushes are keyed by push strategy name. In other words, given:

    config.push.define("foo", strategy: "bar")

the `push_configs` has will look like:


    { :foo => [:bar, #<PushConfig>] }

This is important, because if we key by strategy, the user cannot 
specify the same push strategy more than once:

    config.push.define("foo", strategy: "bar")
    config.push.define("zip", strategy: "bar")

If we keyed off of the strategy, this would be impossible.
2014-12-14 23:32:32 -05:00
Douézan-Grard Guillaume 9d1834a3c9 Fix line breaks 2014-12-13 21:08:31 +01:00
Mitchell Hashimoto fdd7bc3ffd commands/login: append access token to vagrantcloud => atlas URLs 2014-12-12 14:53:05 -08:00
Mitchell Hashimoto 84ae22e976 kernel/v2: fix push strategy config lookup 2014-12-12 01:36:39 -08:00
Mitchell Hashimoto 669c9fc013 commands/push: push strategy should be string 2014-12-12 01:27:22 -08:00
Mitchell Hashimoto e212b31394 Merge pull request #4905 from mitchellh/gc-fix-docker-agent-forwarding
providers/docker: fix support of agent forwarding
2014-12-11 17:21:59 -08:00
Mitchell Hashimoto a3a41fe3bc Merge pull request #4906 from mitchellh/gc-4071-docker-ansible
provisioners/ansible: use Docker proxy when needed
2014-12-11 17:20:41 -08:00
Seth Vargo 6596f7f29d Merge pull request #4937 from mitchellh/sethvargo/error_format
Use the new Rails error format
2014-12-11 16:54:45 -08:00
Max Lincoln 3e8fdc0ca4 WinRM SSL support 2014-12-11 15:07:34 -05:00
Seth Vargo 9a575a79ec Use the new Rails error format 2014-12-11 01:21:46 -08:00
Seth Vargo 0506e17778 Update Atlas Push to use new vagrant-login API 2014-12-10 15:11:04 -08:00
Seth Vargo 7d6a6cd263 Read the ATLAS_TOKEN in vagrant-login 2014-12-10 15:08:43 -08:00
Mitchell Hashimoto ed688ec775 Merge pull request #4929 from kalifg/master
Add back creation of mount point
2014-12-10 09:18:42 -08:00
Mitchell Hashimoto 2a285d7655 hosts/bad: escape regexp properly [GH-4922] 2014-12-10 09:16:45 -08:00
Michael Dwyer e65ae7b543 Add back creation of mount point
Accidentally removed in ad4b30dd
2014-12-10 10:56:30 -06:00
Mitchell Hashimoto 02a615a646 Merge remote-tracking branch 'upcoming/master' 2014-12-09 16:18:18 -08:00
Seth Vargo bb7b954a5f Use the new namespace in Atlas config 2014-12-08 22:06:41 -08:00
Seth Vargo 62065e013a Read and return login errors from Atlas 2014-12-08 18:26:36 -08:00
Seth Vargo 3d8a1ec3fc Fix some rename shit 2014-12-08 18:26:36 -08:00
Seth Vargo b973186cb5 Add vagrant-login to core ;) 2014-12-08 18:26:36 -08:00
Seth Vargo 2e4f854725 Vagrant Cloud -> Atlas 2014-12-08 17:42:29 -08:00
Seth Vargo fa7cd37e42 Send the Atlas token 2014-12-08 16:54:19 -08:00
Gilles Cornu 118e223c33 provisioners/ansible: use Docker proxy when needed
Close #4071

Credits and best thanks to @jabclab
2014-12-08 21:43:21 +01:00
Gilles Cornu 15679f76f8 Merge pull request #4883 from mitchellh/gc-vagrant-1.7-ansible-provisioner
Non-trivial changes and bug fixes for the Ansible provisioner
2014-12-08 21:29:24 +01:00
Seth Vargo 9e5b587e66 Re-add TODO 2014-12-08 11:35:15 -08:00
Seth Vargo 70b61047c7 Do not support multiple strategies right now 2014-12-08 11:35:15 -08:00
Seth Vargo 6b48199346 Infer push name when only one strategy is defined, support multiple strategies 2014-12-08 11:35:15 -08:00
Mitchell Hashimoto 4a64da5663 Fix some issues around push, fix tests, add missing translations 2014-12-08 11:35:15 -08:00
Mitchell Hashimoto 44e6ec6df8 pushes/atlas: support custom server address 2014-12-08 11:35:15 -08:00
Mitchell Hashimoto 998c5688e8 pushes/atlas: Look for the uploader bin in the embedded dir 2014-12-08 11:35:15 -08:00
Seth Vargo ede14d7daa Separate local-exec push `script` from `inline` 2014-12-08 11:35:14 -08:00
Seth Vargo 612eeb2265 Add local-exec push 2014-12-08 11:35:14 -08:00
Seth Vargo 9d1a43c766 Interpret the app from the CWD 2014-12-08 11:35:14 -08:00
Seth Vargo 7e3de3951e Do not check for a branch until after we have found git 2014-12-08 11:35:14 -08:00
Seth Vargo b9e8f6e892 Interpret the current branch to push to Heroku 2014-12-08 11:35:14 -08:00
Seth Vargo 1f49b7ef62 Remove branch option (it should be interpreted) 2014-12-08 11:35:14 -08:00
Seth Vargo ce380a3b12 Remove safe_exec (not being used) 2014-12-08 11:35:13 -08:00
Seth Vargo 4282fcf55e Add heroku push plugin file 2014-12-08 11:35:13 -08:00
Seth Vargo c16dc5c9c9 Add heroku push implementation 2014-12-08 11:35:13 -08:00
Seth Vargo d4058130e4 Add heroku config 2014-12-08 11:35:13 -08:00
Seth Vargo fb05563762 Load the translations in Atlas 2014-12-08 11:35:13 -08:00
Seth Vargo 1d7f4f26be Provide a better error message for the FTP push 2014-12-08 11:35:13 -08:00
Seth Vargo dc8b36b31d Allow = methods for include and exclude 2014-12-08 11:35:13 -08:00
Seth Vargo ed605c9aac Rename Harmony to Atlas, minor config changes 2014-12-08 11:35:13 -08:00
Seth Vargo c8bdf53c7e Rename push environment to env 2014-12-08 11:35:12 -08:00
Seth Vargo 8aaf5dc578 Add the FTP push 2014-12-08 11:35:12 -08:00
Seth Vargo 80851a887f Create an Adapter to bridge the APIs between SFTP and FTP libraries 2014-12-08 11:35:12 -08:00
Seth Vargo eb5cecc782 Create ftp push plugin with custom i18n loading 2014-12-08 11:35:12 -08:00
Seth Vargo b90253ea8c Create ftp push config 2014-12-08 11:35:12 -08:00
Mitchell Hashimoto 913dafd3aa pushes/harmony: remove unneceessary if 2014-12-08 11:35:12 -08:00
Mitchell Hashimoto 81f748347e pushes/harmony: fixes from @sethvargo 2014-12-08 11:35:12 -08:00
Mitchell Hashimoto fefaa8da71 pushes/harmony: use to_s.strip.empty? to check if app is set 2014-12-08 11:35:12 -08:00
Mitchell Hashimoto 1705460880 pushes/harmony: expand dir relative to Vagrantfile root path 2014-12-08 11:35:12 -08:00
Mitchell Hashimoto f3f4f4aeb6 pushes/harmony: stub I18n 2014-12-08 11:35:12 -08:00
Mitchell Hashimoto efffc5f2f7 push/harmony: basic push implementation 2014-12-08 11:35:11 -08:00
Mitchell Hashimoto 168715ad7d push/harmony: ability to set uploader path 2014-12-08 11:35:11 -08:00
Mitchell Hashimoto e7b0661a93 pushes/harmony: boilerplate, config 2014-12-08 11:35:11 -08:00
Seth Vargo 9af7675bd3 Use a more readable version for setter 2014-12-08 11:35:11 -08:00
Seth Vargo 1121e96cf7 Remove TODO comment about duplicate code 2014-12-08 11:35:11 -08:00
Seth Vargo 411c7d6f75 Define finalize! and __compiled_pushes for Push config 2014-12-08 11:35:11 -08:00
Seth Vargo 190da26404 Push does not have access to @machine 2014-12-08 11:35:10 -08:00
Seth Vargo 03b8105571 Super primitive implementation of Environment#push 2014-12-08 11:35:10 -08:00
Seth Vargo b6c5ca6b7a Add Push command and tests 2014-12-08 11:35:10 -08:00
Seth Vargo 0e824cc471 Rename file push to noop push 2014-12-08 11:35:09 -08:00
Seth Vargo 8a7e546972 Add preliminary File pusher (incomplete) 2014-12-08 11:35:09 -08:00
Atha Kouroussis 9e9362d976 Fix broken rsync cap for Solaris guests 2014-12-08 09:42:13 -05:00
Gilles Cornu 3800103228 provisioners/ansible: improve comment wording
Get rid of the Joker, thanks to @maspwr :)
2014-12-07 22:34:19 +01:00
Gilles Cornu 40a22ff99a providers/docker: fix support of agent forwarding 2014-12-07 11:02:50 +01:00
Jeff Quast c6cce57ff4 Avoid double-newlines in salt-call output
When using the salt provisioner with verbose=true, most lines read with an extra newline:
```
[INFO    ] Syncing modules for environment 'base'

[INFO    ] Loading cache from salt://_modules, for base)

```

because the line read has a newline, and emitting the log entry again includes an additional newline.
2014-12-03 21:48:30 -08:00
Ken Crowell 72afdce630 Issue #4895: Support grains config for salt 2014-12-02 18:01:09 -04:00
Paul Hinze 25ff636ee2 providers/virtualbox: cleanup default vbox dhcp server
fixes #3083

Detect the presence of the default DHCP server that comes in a fresh
VirtualBox install and clean it up to prevent it from colliding with
Vagrant-managed network config.

In order to accomplish this, we:

 - add a `remove_dhcp_server` call to the virtualbox driver
 - fix dhcp options parsing to allow `:dhcp_{ip,lower,upper}`
   configuration options to make it through (so a user can override the
   removal behavior with some explicit configuration)
 - add the full `:network_name` to the details returned from
   `:read_dhcp_servers`, so we can have a durable value to pass to
   `:remove_dhcp_server`

Note that we do have to eat one more `VBoxManage list dhcpservers` for
each network interface to support this, but this seemed like a nominal
cost
2014-11-30 22:03:52 -06:00
Paul Hinze 24b6f21d1d providers/virtualbox: extract reading dhcpservers from hostonlyifs
This is just a refactor, no behavior change.

Instead of stitching together dhcpserver info in the structure returned
from `read_host_only_interfaces`, sprout a new driver method called
`read_dhcp_servers` to return that information separately.

This means that driver clients (well there's really only _one_ client in
`ProviderVirtualBox::Action::Network`) have to do a bit more work to get
interface and DHCP server information.

But this gives us (a) a cleaner and more consistent driver interface and
(b) groundwork for a fix for #3083, which will require interacting with
DHCP servers outside of the context of host-only interfaces.
2014-11-30 22:03:52 -06:00
Gilles Cornu f96636587a provisioners/ansible: don't read/write known_hosts
Like Vagrant's default SSH behaviors (e.g ssh or ssh-config commands),
the Ansible provisioner should by default not modify or read the user
known host file (e.g. ~/.ssh/known_hosts).

Given that `UserKnownHostsFile=/dev/null` SSH option is usually combined
with `StrictHostKeyChecking=no`, it seems quite reasonable to bind the
activation/disactivation of both options to `host_key_checking`
provisioner attribute.

For the records, a discussion held in Ansible-Development mailing list
clearly confirmed that there is no short-term plan to adapt Ansible to
offer an extra option or change the behavior of
ANSIBLE_HOST_KEY_CHECKING. For this reason, the current implementation
seems reasonable and should be stable on the long run.

Close #3900

Related References:

- https://groups.google.com/forum/#!msg/ansible-devel/iuoZs1oImNs/6xrj5oa1CmoJ
- https://github.com/ansible/ansible/issues/9442
2014-11-30 09:55:48 +01:00
Gilles Cornu 178942cf27 provisioners/ansible: change arguments arrangement
- force `--connection=ssh` (any other modes like paramiko or smart are not
  supported)
- give the highest priority to `raw_arguments` for sake of simplicity (in
  usage, in code and in documentation)
- fix position of the `--limit` argument (the generated inventory could be
  shadowed by `raw_arguments`, while ansible.limit was able to override
  `raw_arguments`

ref #3396
2014-11-30 09:50:50 +01:00