Mitchell Hashimoto
ce5a30b264
provisioners/puppet: fix config merging [GH-5958]
2015-07-15 10:59:34 -07:00
Mitchell Hashimoto
3476491881
update CHANGELOG
2015-07-15 10:57:38 -07:00
Ben Hines
770d927ba1
Structured yaml facts - first pass
2015-07-15 00:38:57 -07:00
Ben Hines
46eedb6491
Back to using 'which' when no path is defined since the winrm communicator overrides it anyway.
2015-07-14 23:55:09 -07:00
Ben Hines
8c2ddac2cd
Check for nil config_path.
2015-07-14 23:26:55 -07:00
Ben Hines
8c1ff5ee26
Fix custom puppet.binary_path to work properly on windows.
...
Fix automatic puppet path detection on windows
2015-07-14 23:21:46 -07:00
William Kral
27d7518636
Fix alignment of initializer
2015-07-11 10:40:17 -07:00
William Kral
ccd7354665
Initialize the install_command salt config var
2015-07-11 10:31:19 -07:00
Seth Vargo
516d475f16
Checksum args to each docker container in local data
...
This allows Vagrant to calculate if a container's arguments (such as the run
arguments) have changed in the Vagrantfile since the original run.
Fixes GH-3055
2015-07-10 11:32:02 -06:00
Seth Vargo
3e3037f313
Add a space before args
2015-07-10 10:49:21 -06:00
Gilles Cornu
3842a1f710
provisioners/ansible: provide ssh identities via ANSIBLE_SSH_ARGS (when necessary)
...
When provisioning multiple machines in sequence (the default vagrant
behaviour), it doesn't make sense to require to provide the private ssh
key(s) via the custom ansible inventory script/file.
To align with the handling of multiple ssh keys per machine, we won't
rely any longer on `--private-key` command line argument, but only pass
the keys via `ANSIBLE_SSH_ARGS` environment variable.
Note that when vagrant generates the ansible inventory and that only one
key is associated to a VM, this step would be redundant, and therefore
won't be applied.
This change fixes the breaking change introduced by 3d62a91.
2015-07-10 08:51:17 +02:00
Luis Pabón
f0718d620d
provisioners/ansible: Put ssh key in the inventory
...
Vagrant 1.7.1 creates and injects new ssh keys for each virtual machine.
When it started ansible with the "parallel provisioning trick",
it would only send the ssh key of the targeted virtual machine.
With this change, vagrant now stores the ssh key for each virtual
machines directly in the generated ansible inventory, and thus allow
ansible parallelism.
Note that this change is not sufficient, as it would break vagrant
configuration based on a custom inventory (file or script). This issue
will be addressed in a next commit.
Signed-off-by: Luis Pabón <lpabon@redhat.com>
2015-07-10 08:39:49 +02:00
Seth Vargo
4b1847acf3
Use Chef Client for Chef Zero
...
Fixes GH-5619
2015-07-09 21:23:42 -06:00
Seth Vargo
40b94afeb5
Update command builder now that provisioning_path has moved to runtime
2015-07-09 17:46:39 -06:00
Seth Vargo
60330218fb
Merge pull request #5913 from mitchellh/sethvargo/windows_chef_paths
...
Use windows-specific Chef paths
2015-07-09 17:05:40 -06:00
Seth Vargo
e9bcf147f0
Prefix with guest_
2015-07-09 17:01:36 -06:00
Seth Vargo
0e039159a6
Calculate Chef paths at provision time
2015-07-09 16:55:55 -06:00
Nicholas Randon
eb6aa2ac8c
Allow Ansible provisioner to run reliably in parallel
...
The Ansible Vagrant provisioner has a race where the inventory file is
updated every time the provisioner runs unless a file is provided.
Therefore if Ansible attempts to provision two nodes in parallel, you
may see the following race:
* System A writes the inventory file and calls Ansible.
* System B starts to provision and truncates the file before
creating a new one.
* Ansible on system A now attempts to read the inventory
file, which is blank. Ansible bombs out with "ERROR: provided
hosts list is empty".
To fix this, we only allow Vagrant to update the inventory file if
it needs to.
2015-07-10 00:53:59 +02:00
Seth Vargo
742d47c4cf
No longer need subprocess wrapping there :)
2015-07-09 16:06:03 -06:00
Mitchell Hashimoto
d51c5fbc69
Merge pull request #5435 from juiceinc/bugfix/salt-provisioner
...
Update Salt provisioner to allow more flexibility in passing arguments to the bootstrap script
2015-07-09 15:02:34 -06:00
Mitchell Hashimoto
300b9c9109
provisioners/chef: don't check existing set, unique ID
...
[GH-5199]
2015-07-09 14:04:12 -06:00
Mitchell Hashimoto
9dd5640324
provisioners/docker: for debian, chmod the var lib docker folder
2015-07-08 12:13:25 -06:00
Gilles Cornu
839a2e6fa6
provisioners/ansible: show ansible-playbook only when the verbose option is enabled
...
Revert 1c884fa4e5
which introduced the
following bug:
Instead of allowing to dump the `ansible-playbook` command details when
VAGRANT_LOG=debug was defined, it was then impossible to disable this
console output when VAGRANT_LOG was undefined (in such case,
``@logger.debug ? systematically returns `true`)
In order to keep things simple and focused, it is preferable to drop the
bad idea to mix Ansible verbosity and Vagrant log level.
Fix #5803
2015-07-07 22:37:06 +02:00
Mitchell Hashimoto
9c7f666e48
provisioners/docker: support restart flag [GH-4477]
2015-07-07 12:17:24 -06:00
Pat O'Shea
da67824a53
Adding run_service and minion/master ids for windows
2015-07-07 00:24:23 -06:00
Mitchell Hashimoto
4d2e8fd591
Merge pull request #5860 from arthurvanduynhoven/docker-provisioner-deb-fix
...
provisioner/docker: Docker Provisioner fails on Debian [ubuntu/trusty64]
2015-07-06 15:16:03 -06:00
Mitchell Hashimoto
cc2d393611
Merge pull request #5892 from PatOShea/master
...
provisioner/salt: Updated version for windows and added passing in version via vagrantfile
2015-07-06 15:11:08 -06:00
Mitchell Hashimoto
2fc8d99f6d
provisioners/file: validate source relative to Vagrantfile path
...
[GH-5252]
2015-07-06 14:22:00 -06:00
Jeff Quast
1ac3d17773
bugfix: undefined local variable or method `dir'
...
resolves bug introduced in 74d22069d4
2015-07-06 11:39:07 -07:00
Mitchell Hashimoto
fec6ef11c8
provisioners/puppet: just quiet the NFS errors for Puppet [GH-5456]
2015-07-06 11:19:32 -06:00
Mitchell Hashimoto
e64cef9d31
provisioners/chef: fix crash if run list is somehow nil [GH-5545]
2015-07-05 17:30:29 -07:00
Pat O'Shea
eab702da83
Adding config to set version to install
2015-07-04 01:25:31 -06:00
arthurvanduynhoven
94549ab755
Need to do update before installing linux-image-extra kernel in case system is outdated.
2015-06-24 14:56:28 +02:00
Seth Vargo
b92d4b21a1
Add UI::Interface#color?
2015-06-01 11:49:09 -04:00
Tim O'Guin
72e63767ac
Salt Provisioner: refactor custom install_type option to add install_command instead
2015-06-01 10:37:41 -05:00
Tim O'Guin
0b24866537
merged in master and resolved conflict in Salt provisioner docs
2015-06-01 10:07:28 -05:00
Gilles Cornu
f7894d9c8c
provisioners/ansible: fix broken colorized output
...
After #5532 (e745436df3
), it was no longer
possible to enable ansible colorized output. Even though
`ANSIBLE_NOCOLOR` has no effect *at the moment* in vagrant+ansible
integration, I agree to keep it for clarity and consistence.
The new `--no-color` behaviour (bug fix #5531 ) is now covered by a unit
test.
//cc @marsam, @sethvargo
2015-06-01 08:36:09 +02:00
Seth Vargo
3017243a24
Merge pull request #5577 from luciddg/fix/master/docker-provisioner-restart-fix
...
Use service command to restart docker, not upstart.
2015-05-31 20:44:48 -07:00
Seth Vargo
6a48af6350
Merge pull request #5532 from marsam/fix/master/ansible-no-color
...
Disable color if in ansible provisioner if Vagrant has no color
2015-05-31 20:34:06 -07:00
Seth Vargo
f5c77765fa
Merge pull request #5437 from Jamezz/master
...
Fix issue #4152 : Salt minion bootstrapping
2015-05-31 20:08:32 -07:00
Seth Vargo
b90807648b
Style fixes
2015-05-31 10:19:03 -07:00
Seth Vargo
e34308ec12
Merge pull request #4371 from andrewmains12/salt_orchestrations
...
Added ability to run salt orchestrations to Salt provisioner
2015-05-31 10:17:54 -07:00
Seth Vargo
01ce48ea9e
Merge pull request #5669 from taliesins/ChefProviderWindowsSupport
...
Use powershell syntax for Chef provisioner when using windows guest
2015-05-30 21:31:43 -07:00
John Cooper
7f716f4b63
Added synced_folder_args to puppet provisioner
2015-05-30 21:26:05 -07:00
Seth Vargo
042928db9f
Merge pull request #5601 from benh57/environments_wip
...
Puppet 4 and Puppet environments support
2015-05-30 21:04:48 -07:00
Seth Vargo
50c0c487fb
Style cleanup for new name option
2015-05-30 20:57:49 -07:00
Seth Vargo
afc02ed681
Merge pull request #5607 from purpleidea/feat/named-shell
...
Add :name attribute to shell provisioner.
2015-05-30 20:54:34 -07:00
Seth Vargo
464e3f5bec
Merge pull request #5749 from jeremyplichta/patch-1
...
change to https in sources.list.d
2015-05-30 11:59:05 -07:00
Seth Vargo
dadee77730
Merge pull request #5637 from paul-krohn/config-not-found-error
...
Provide path to missing file.
2015-05-30 11:55:25 -07:00
David Cournapeau
3528af2db9
ENH: simpler masterless configuration.
2015-05-30 11:42:15 -07:00
Seth Vargo
0b85e04399
Minor style fixes for salt config_dir
2015-05-30 11:39:24 -07:00
David Cournapeau
74d22069d4
BUG: naive attempt at fixing #2970 .
2015-05-30 11:39:23 -07:00
Jeremy Plichta
db1bd8d8c1
change to https in sources.list.d
...
I started having this problem when running the docker provisioner (Vagrant 1.7.2):
Err http://get.docker.io docker/main amd64 Packages
Undetermined Error
Err http://get.docker.io docker/main i386 Packages
Undetermined Error
Ign http://get.docker.io docker/main Translation-en_US
Ign http://get.docker.io docker/main Translation-en
Stderr from the command:
stdin: is not a tty
W: Failed to fetch http://get.docker.io/ubuntu/dists/docker/main/binary-amd64/Packages Undetermined Error
W: Failed to fetch http://get.docker.io/ubuntu/dists/docker/main/binary-i386/Packages Undetermined Error
Changing this to https seemed to fix the problem for now.
2015-05-22 15:18:11 -06:00
Taliesin Sisson
9233e22974
Use powershell syntax for Chef provisioner when using windows
2015-05-02 16:21:32 +01:00
Ben Hines
9bbfbef977
Be a bit more robust when parsing environment.conf
2015-04-27 23:09:07 -07:00
Paul Krohn
c7f32e6159
When you can't find the salt minion or master config, say what you were looking for.
2015-04-26 11:34:34 -07:00
James Shubin
b16b85aa7d
Add :name attribute to shell provisioner.
...
This allows the display of friendly output to the user when we think an
important action should be labeled a certain way. This makes vagrant
output a lot more useful when many inline shell provisioners are
present.
2015-04-18 00:35:21 -04:00
Ben Hines
602227ca7d
Remove debug spam from development.
2015-04-16 00:50:53 -07:00
Shawn Neal
9de3c481de
Salt bootstrap ps1 should be idempotent
...
- WinRM communicator error detection was tightened up thus exposing an issue in the salt bootstrap script creating directories that already exist.
2015-04-14 05:57:16 -07:00
Ben Hines
ffcb58bcd9
When using environments, allow specifying the 'main manifest' using manifest_path and manifest_file.
2015-04-12 12:31:31 -07:00
Ben Hines
0efb9a3932
Fix resolution of puppet path for <4.0
2015-04-12 12:29:50 -07:00
Ben Hines
b40426aca5
Properly parse out and use the environment's manifest file which is specified in environment.con.
2015-04-12 02:16:54 -07:00
Ben Hines
c8f300e5f5
Correct environment path option to puppet apply.
2015-04-12 01:43:19 -07:00
Ben Hines
c701bab253
Properly handle various combinations of Puppet options being specified.
2015-04-12 01:26:41 -07:00
Ben Hines
cff7c52716
Use localized error message. Update strings for puppet provisioner errors.
2015-04-12 01:25:40 -07:00
Ben Hines
7a4e7929f8
Don't parse env metadata until provisioning time. TBD: make it functional
2015-04-12 01:18:49 -07:00
Ben Hines
3ee47acb42
Remove debug output
2015-04-12 01:18:12 -07:00
Ben Hines
e2c68fc12d
Correct environment path config name.
2015-04-11 23:48:18 -07:00
Ben Hines
3a2a9a3b94
Add a binary_path option to the puppet provisioner to match the chef provisioner, and support new puppet 4 install location.
2015-04-11 23:35:25 -07:00
Ben Hines
cf847e0410
Merge branch 'master' into environments_wip
...
Conflicts:
Vagrantfile
vagrant.gemspec
2015-04-11 13:33:32 -07:00
Ben Hines
e8843b8648
Merge branch 'master' of https://github.com/mitchellh/vagrant
2015-04-11 13:03:18 -07:00
Brandon Matthews
c0f43c362c
Use service command to restart docker, not upstart.
...
upstart ships by default on Ubuntu, but not on Debian, and service works
everywhere. Fixes #5245 .
2015-04-10 10:06:21 -07:00
Mario Rodas
e745436df3
provisioners/ansible: disable color if Vagrant has no color [GH-5531]
2015-03-28 19:05:54 -05:00
Jamezz
71c40bdf6a
File architecture string should be x86
...
As of 2014.7.0, Salt has changed their file naming for 32-bit from win32
to x86.
2015-03-06 13:14:11 -08:00
Jamezz
2f4a0af5d1
Fix issue #4152 : Salt minion bootstrapping
...
Copy the config after we know the installer exits. Also rev the
installed version to 2014.7.1 (latest stable as of 3/4/2015)
2015-03-04 18:08:07 -08:00
Tim O'Guin
0289ab986c
Salt Provisioner: Added a 'custom' option to install_type to allow more flexibility in passing arguments to the bootstrap script. Updated the docs.
2015-03-04 15:05:24 -07:00
Mitchell Hashimoto
713be4c5b9
provisioners/chef: actually use command -v
2015-02-24 10:12:25 -08:00
Mitchell Hashimoto
c1e2d36090
provisioners/chef: use command -v to check for binary [GH-5167]
2015-02-24 10:11:05 -08:00
Mitchell Hashimoto
734b0d6695
Merge pull request #5315 from jimmidyson/non-existent-docker-group
...
provisioners/docker: only add user to docker group if docker group exists
2015-02-24 09:45:03 -08:00
Michael Lopez
8adc10f295
Update chef_zero provisioner to use real chef-zero/local-mode to support cookbook version constraint
2015-02-14 22:32:16 +01:00
Michael Lopez
74ffcb27d6
Add 'enable_reporting' attribute for chef provisioner
2015-02-14 22:28:32 +01:00
Jimmi Dyson
be2643d40d
Only add user to docker group if docker group exists (doesn't in recent Fedora docker-io installs)
2015-02-10 18:11:39 +00:00
Clay Allsopp
69b7200c35
Switch to docker.com
...
docker.io seems to be deprecated & handled differently from docker.com; see https://twitter.com/clint_newsom/status/557290529810313217
2015-01-19 13:58:45 -08:00
Clinton Wolfe
17a0d08040
Add chef_install(ed?) guest capability for omnios
2015-01-13 17:45:01 -05:00
Gilles Cornu
cdd5d54208
provisioners/ansible: fix a typo in a comment
...
[ci skip]
2015-01-13 18:52:47 +01:00
Gilles Cornu
28e0646dc2
Fix typo error in CHANGELOG
...
Close #4860
[ci skip]
2015-01-12 10:59:07 +01:00
Gilles Cornu
2ecad8bb93
provisioners/ansible: increase connection timeout
...
This change helps to avoid troubles like reported in #5018 and #4860 .
Note that for sake of configuration simplicity, no new `ansible.timeout`
option has been added. The users who want to set a different value can
rely on `ansible.raw_arguments`.
2015-01-12 10:54:01 +01:00
Gilles Cornu
c3cae3d235
provisioners/ansible: add `IdentitiesOnly=yes`
...
This SSH option is always set, except when Vagrant is running from an
operating system fo the Solaris-family, as this parameter is not
supported by SunSSH. Logic taken from
bed1f8335f/lib/vagrant/util/ssh.rb (L116-L121)
Fix #5017
2015-01-12 08:58:29 +01:00
Mitchell Hashimoto
95e1c19f22
provisioners/puppet: fix exception with module paths [GH-5123]
2015-01-06 22:50:24 -08:00
Mitchell Hashimoto
661657c63f
provisioners/chef: fix failing test
2015-01-06 10:57:25 -08:00
Mitchell Hashimoto
5b4b387f04
provisioners/chef: fix failing tests
2015-01-06 10:56:28 -08:00
Mitchell Hashimoto
de6b55d007
provisioners/puppet: use predictable synced folders
2015-01-06 10:48:31 -08:00
Mitchell Hashimoto
155516fb6c
provisioners/chef: use synced folder cache instead of counter
2015-01-06 10:31:13 -08:00
Seth Vargo
d2874064f4
Use .key? instead of .has_key?
2015-01-05 18:29:01 -05:00
Andrew Mains
9aa20d5d6b
Added ability to run salt orchestrations to salt provisioner
2014-12-31 10:31:35 -08: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
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
Seth Vargo
954289beb6
Use new Chef Omnibus URL
2014-12-16 12:16:08 -05: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
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
Gilles Cornu
3800103228
provisioners/ansible: improve comment wording
...
Get rid of the Joker, thanks to @maspwr :)
2014-12-07 22:34:19 +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
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
Gilles Cornu
306c4f7eda
provisioners/ansible: force --connection=ssh
...
When `--connection` argument is not specified, Ansible will use the
'smart' mode, which can either use `ssh` or `paramiko` transports,
depending of the version of OpenSSH available. If OpenSSH version is new
enough to support ControlPersist technology, `ssh` will be used.
See also http://docs.ansible.com/intro_configuration.html#transport .
In order to support some advanced features of Vagrant (e.g. multiple ssh
private key identities or ssh forwarding), the Ansible provisioner
already must force `ssh` connection mode.
Having to deal with the possible fallback to `paramiko` increase the
burden of special cases that Ansible provisioner must handle, without
any added value, as Vagrant is based on OpenSSH and its users are
usually using modern operating systems.
With this change, the Ansible provisioner will officially only support
`ssh`. It will still be possible to switch to another connection mode
via `raw_arguments`, but it will breach the "contract", and no
(community) support can be expected in such use case.
ref #3900 , #3396
2014-11-30 09:50:50 +01:00
Gilles Cornu
1c884fa4e5
provisioners/ansible: Show Ansible command when VAGRANT_LOG=debug
2014-11-25 08:12:43 +01:00
Seth Vargo
f86189a2fe
Add Env.with_clean_env for resetting the Ruby and Rubygems environment
2014-11-10 12:00:23 -05:00
Seth Vargo
f232dc38c9
Automatically install Chef when provisioning with Chef
2014-11-07 15:56:22 -05:00
Seth Vargo
a8fa4bccc7
Add Chef::Config#install and Chef::Config#version options
2014-11-07 15:56:21 -05:00
Seth Vargo
8f35ecaa6f
Extract runner-specific Chef configs into their own subclass
...
This separates the truly basic pieces of Chef (like install url and
log_level) from the runner pieces of Chef (like provisioning_path). This
is necessary because the Chef Apply provisioner does not actually need
most of the Chef configuration options.
2014-11-07 15:56:21 -05:00
Seth Vargo
59eb0ad2e8
Add Chef Apply provisioner
2014-10-30 15:32:15 -04:00
Seth Vargo
514101816b
Fix alignment in the Chef Client config
2014-10-30 15:32:10 -04:00
Seth Vargo
af9177550a
Properly handle empty/nil values in Chef Solo config
2014-10-30 13:43:26 -04:00
Seth Vargo
7e71d72db8
Check for empty chef_server_url and validation_key_path
2014-10-30 13:43:25 -04:00
Seth Vargo
721edf70b9
Make Chef Zero lowercase in validation (conforms to other keys)
2014-10-30 13:43:25 -04:00
Seth Vargo
1169c80a72
Use require_relative for faster loading
...
require_relative is an order of magnitude faster on Windows
2014-10-30 13:43:25 -04:00
Teemu Matilainen
dec5dcdda3
provisioners/chef: Add `chef_zero` provisioner
...
Add Chef Zero provisioner using `local_mode` configuration for
chef-solo/chef-client.
2014-10-30 13:43:24 -04:00
Mitchell Hashimoto
da91741b7c
provisioners/shell: fix typo
2014-10-23 22:49:26 -07:00
Mitchell Hashimoto
a7d3458abc
provisioners/shell: retry getting SSH info a few times [GH-3924]
2014-10-23 22:48:48 -07:00
Gilles Cornu
1e324093a5
provisioners/ansible: spare machine.ssh_info calls
...
As a result of #4670 and the safe decision to not memoize
machine.ssh_info (see 89a4a29d65
and
5036d16461
), it is preferable to store the
ssh_info hashes and avoid multiple function calls when generating the
ansible inventory.
2014-10-23 22:58:01 +02:00
Mitchell Hashimoto
37a04b4bfc
provisioners/puppet: use correct error class [GH-4520]
2014-10-23 10:46:11 -07:00
Mitchell Hashimoto
4b4255c6d1
Merge pull request #4492 from tboerger/feature/suse-fixes
...
SUSE naming and capability fixes
2014-10-23 10:11:28 -07:00
Mitchell Hashimoto
3f01a99148
provisioners/shell: rename shell_args to powershell-args
2014-10-23 09:53:14 -07:00
Mitchell Hashimoto
f0a4e26d27
Merge pull request #4548 from ebelew/shellargs
...
Update powershell provisioning to fix #4547
2014-10-23 09:50:50 -07:00
Mitchell Hashimoto
abb9e5478a
provisioners/docker: get GPG key via SSL [GH-4597]
2014-10-23 09:34:24 -07:00
Mitchell Hashimoto
29df3c733b
Merge pull request #4596 from miguel250/patch-1
...
Use HTTPS to download docker's gpg key.
2014-10-23 09:32:54 -07:00
Mitchell Hashimoto
d28a7806ea
Merge pull request #4472 from abele/fix/master/salt-retcode-passthrough
...
Fix state.highstate run when using salt master
2014-10-22 22:03:46 -07:00
Mitchell Hashimoto
18c76f0a86
provisioners/docker: search for Docker in multiple paths [GH-4580]
2014-10-21 16:19:02 -07:00
Miguel Perez
307c670154
Use SSL to download docker gpg key.
...
Fixed #4569
2014-10-21 17:29:49 -04:00
Ben Hines
3321a6da11
Make environment path param more canonical with an underscore
2014-10-19 21:34:54 -07:00
Ben Hines
16870d72d1
Some work in progress environment support
2014-10-19 21:28:38 -07:00
Anton D
fdbf3366ce
Check whether Salt bootstrap script exists before attempting to delete it. GH-4614
2014-10-10 23:20:50 +13:00
Eris Belew
7a73f5bd7c
Update shell provisioner for powershell to add "shell_args", saner defaults and more useful detail in logging output; Add Eclipse .project file to .gitignore IDE section
2014-09-23 12:46:25 -07:00
Ben Hines
1a6805d469
Use the more canonical require_relative to include files
2014-09-15 21:49:37 -07:00
Thomas Boerger
31b6d69127
Fixed suse naming for fcengine cap and refined install command
2014-09-11 10:51:34 +02:00
Jānis Ābele
fe16352267
Fix state.highstate run when using salt master
...
retcode-passthrough option is available only for masterless salt-call.
2014-09-07 20:03:17 +03:00
James Shubin
4763506b89
Remove erroneous yum upgrade.
...
This upgrade shouldn't be part of the docker setup process. If an
upgrade is needed, it should be done independently of the docker setup.
Do it to your base image, or if needed, as a shell provisioner step.
2014-09-02 12:44:46 -04:00
Mitchell Hashimoto
ee70bdd028
provisioners/docker: fix ruby typo
2014-08-30 22:46:57 -07:00
Mitchell Hashimoto
6074a63683
guests/redhat: install Docker on EL7 properly [GH-4402]
2014-08-30 22:44:48 -07:00
Mitchell Hashimoto
aae3d93afe
Merge pull request #4377 from sumkincpp/patch-1
...
provisioner/docker: Verbose output for docker provisioner
2014-08-29 10:29:17 -07:00
Mitchell Hashimoto
c29f7dd981
Merge pull request #4335 from nmische/GH-4315
...
provisioners/cfengine: Changing default repo URL.
2014-08-29 09:53:24 -07:00
Mitchell Hashimoto
b842a3ed62
Merge pull request #4379 from s7726/master
...
Update Windows Salt provisioner version
2014-08-29 09:51:24 -07:00
Veres Lajos
4ef996dca9
typofixes - https://github.com/vlajos/misspell_fixer
2014-08-25 20:12:25 +01:00
Gavin Swanson
59826264b8
Update Windows Salt provisioner version
2014-08-23 15:36:52 -07:00
Fedor Sumkin
f2c7dc05a1
Verbose output for docker provisioner
...
Verbose output for docker build and pull tasks
2014-08-22 19:41:01 +04:00
Nathan Mische
70d060cc85
Changing default repo URL.
2014-08-11 21:13:12 -04:00
Mitchell Hashimoto
b516881d47
provisioners/puppet: don't repeat output when prov fails [GH-4303]
2014-08-06 11:11:12 -07:00
Mitchell Hashimoto
1cc78dc224
provisioners/salt: use exit code to detect failure [GH-4304]
2014-08-06 11:07:09 -07:00
Mitchell Hashimoto
3bc5ecfbd0
provisioners/salt: whitespace
2014-08-06 11:05:03 -07:00
Mitchell Hashimoto
e82d425719
Merge pull request #4087 from zr40/fix/master/prevent-double-output
...
Don't output stdout and stderr twice when shell provisioner fails
2014-08-06 10:32:13 -07:00
Mitchell Hashimoto
7fb153a2ef
Merge pull request #3932 from marnovdm/feature/salt-modular-version
...
provisioners/salt: Updates Salt Minion version in Salt Bootstrap script for Windows
2014-08-06 10:25:58 -07:00
Mitchell Hashimoto
2cdcc29902
provisioners/chef: put global lock around knife exec
2014-08-06 10:24:05 -07:00
Mitchell Hashimoto
22395e5cb4
Merge pull request #4099 from mitchellh/fix-issue-2476-chef-client-node-cleanup
...
provisioners/chef: clean bundle env when executing chef client
2014-08-06 10:13:37 -07:00
Mitchell Hashimoto
e1ea304884
Merge pull request #4169 from schauer/patch-1
...
provisioners/puppet: manifest file can be a dir too
2014-08-06 09:56:24 -07:00
Ben Dean
dbb92ae412
change the shell provision config to make all the args strings
...
specifically arrays could contain `Fixnum` args and those wouldn't get turned into strings.
2014-07-22 15:41:01 -04:00
schauer
8a45485de4
Update puppet.rb
...
The main manifest may be a single file or a directory of .pp files.
docs.puppetlabs.com/puppet/latest/reference/dirs_manifest.html#with-puppet-master
https://github.com/mitchellh/vagrant/issues/4039
2014-07-09 21:37:55 +02:00
Shawn Neal
2fd634273f
First attempt at trying to fix issue 2476
...
This addresses the error "chef is not part of the bundle" when the chef-client provisioner attempts to delete the node or client from the Chef Server. While this fixes the specific issue on my system, its likely that it does not account for all system configurations like RVM.
The Bundler.with_clean_env should probably be moved internally to Subprocess.execute, but that's a riskier change and I'd like to get some feedback before even attempting that size of change.
2014-06-24 16:49:17 -07:00
Matthijs van der Vleuten
1091b4cb54
Don't output stdout and stderr twice when shell provisioner fails
...
[GH-4086]
2014-06-23 11:35:40 +02:00
Brett Porter
0c7c143ad1
fix escaping of powershell variable
...
As this is nested in a powershell variable $command, it must be escaped
otherwise it is evaluated when the variable is created, giving an error that
"The term 'True' is not recognized as the name of a cmdlet, function,
script". This prevented using a puppet.working_directory on Windows.
2014-06-18 16:05:17 +10:00
Ben Hines
7d52f0e14d
Backtick-escape the facter env command in powershell. Fixes issue 3958
2014-06-02 19:37:29 -07:00
Marno van der Molen
127ef683e7
make sure C:\tmp\ exists before downloading salt installer
2014-05-28 15:24:47 +02:00
Marno van der Molen
d93a2c0e55
Made Salt Minion version to install a variable - ideally Salt would offer a -latest.exe or something for Windows
2014-05-28 11:09:59 +02:00
Emiliano Ticci
6bd7359c1b
provisioners/puppet: run in elevated mode on Win guests
2014-05-26 11:23:14 +02:00
Kalman Hazins
bb052366f7
Change symbols inside hashes to 1.9 JSON-like syntax
2014-05-22 12:35:12 -04:00
Marno van der Molen
500c40fd42
Now wait for service to be registered before trying to start it
2014-05-19 19:00:18 +02:00
Marno van der Molen
6c97874839
Wait for to be populated & explicitly check for Running status of service
2014-05-19 17:50:22 +02:00
Marno van der Molen
fc3a2106fd
Only try to copy keys & config if they have been uploaded
2014-05-19 15:52:20 +02:00
Marno van der Molen
1ddef49185
minor indentation fix
2014-05-19 14:10:58 +02:00
Marno van der Molen
6d0dd22864
Also copy minion config in bootstrap-salt.ps1 & update Salt docs to mention syndic/master not supported on Windows
2014-05-19 14:01:31 +02:00
Marno van der Molen
7cb50f8a12
Remove Salt Master & Salt Syndic changes - not supported on Windows by Salt
2014-05-19 14:00:46 +02:00
Marno van der Molen
fbd919d52c
Retries starting the salt-minion service several times and adds elevated: true to salt calls
2014-05-19 13:14:25 +02:00
Marno van der Molen
01f2c52251
sometimes salt-minion wouldn't start - this seems stable so far across 10 deploys
2014-05-17 03:38:57 +02:00
Marno van der Molen
2ddffa4fc6
redirect output of mkdir statement to out-null in bootstrap-salt.ps1
2014-05-17 03:31:24 +02:00
Marno van der Molen
02f40b35fa
Adds minimal implementation to deploy a Salt minion on Windows including support for pre-seeding the keys
2014-05-17 02:19:34 +02:00
Paul Cooper @ Agile Barbecue
573683ef00
fix windows guest with puppet and a facter block
...
Powershell doesn't understand the unix-style ENV=thing command syntax, the old vagrant-windows plugin monkey patched the provisioner to put semicolons between statements to set the variables before running puppet - this fixes the issue inside a windows? block leaving the normal non-windows code path working - therefore works for me on both unix and windows provisions with a facter block in place
2014-05-13 17:31:31 +01:00
Mitchell Hashimoto
39eaaf3664
provisioners/puppet: windows module sep [GH-3731]
2014-05-09 09:22:36 -07:00
Fabio Rehm
1eec62cb9e
provisioners/shell: Fix shell provisioning when config.binary is set to false [GH-3712]
...
The `config` in use was the Shell provisioner config that does not expose
access to the VM configs.
References https://github.com/fgrehm/vagrant-lxc/issues/284
2014-05-08 18:55:07 -03:00
Gilles Cornu
52a44de10c
provisioners/ansible: show ansible-playbook in use
...
Motivation:
By printing out the ansible command used behind the scene, we can ease
the support effort to very quickly identify whether a problem is due to
Vagrant provisioner or Ansible itself.
2014-05-04 22:54:12 +02:00
deyk
567af495d4
Add colorization and log_level support to salt provisioner.
...
This commit adds two new options to the salt provisioner:
- `colorize`: controls color output. Defaults to no-color (present behavior).
- `log_level`: controls log level. Defaults to `debug` (present behavior).
Docs included!
2014-05-01 11:10:09 -07:00
Shawn Neal
cc905d7923
Fix remote/downloaded shell scripts
...
The temporary shell script that we downloaded the script too was being deleted twice, thus causing an error on the secondary delete.
2014-04-30 19:39:37 -07:00
Shawn Neal
392269a8eb
Default the WinRM shell provisioner to privileged (elevated)
2014-04-30 19:35:02 -07:00
Shawn Neal
068b5cf0b9
Move Windows symlink re-establishment after reboot into capability
...
This reduces the complexity and likelihood of provisioner bugs.
2014-04-30 17:36:36 -07:00
Mitchell Hashimoto
f80fdfa32a
privisoners/salt: proper bootstrap URL [GH-3583]
2014-04-30 15:32:20 -07:00
Timothy Messier
513a9bf1ab
Set u+w perms on private keys in tmp dir.
...
This should allow additional `vagrant provision` calls to work when
using the salt provisioner and providing private keys. See #3542 .
2014-04-29 11:13:12 -04:00
Mitchell Hashimoto
91c7fb7749
Merge pull request #3554 from mitchellh/chef-provisioner-cleanup
...
provisioner/chef: Chef provisioner cleanup with Windows
2014-04-27 15:51:30 -07:00
Timothy Messier
adeaf29487
Fixed missing end to if
2014-04-27 12:36:01 -04:00
Timothy Messier
b93c6df956
The various `install` args should always be passed to salt-bootstrap.
...
Even when preforming config only, the install flags (i.e. -M, -S, -N),
are used by the bootstrap to determine which configs to copy.
This should help with #3542 and should supersede #3548 .
2014-04-27 12:34:24 -04:00
Shawn Neal
cf71634813
DRY'd up Chef command building
...
There's very little difference between the command building on Linux and Windows other than path formatting. All Chef provisioners support the --no-color argument now.
Added unit tests to verify changes.
2014-04-26 21:07:26 -07:00
Shawn Neal
ebca0e7e44
Fixed bug in CommandBuilderWindows
...
CommandBuilderWindows would not include the Chef binary in the command when the binary_path was specified in the config.
Backfilled unit tests for CommandBuilderWindows
2014-04-26 21:07:26 -07:00
Shawn Neal
68ce06561a
Removed old unused WinRM chef provisioner scripts
2014-04-26 21:07:26 -07:00
Shawn Neal
38c7203f92
Chef provisioner should utilize reboot capability
2014-04-26 21:07:26 -07:00
Shawn Neal
99ce95198b
First pass at integrating new WinRM elevated execution wrapper
...
- Removed a lot of the Windows special casing from Chef runs
- Don't attempt to use @config.binary_env since we don't properly pass this along to Chef
2014-04-26 21:07:26 -07:00
jjshoe
7ef8477e43
provisioners/ansible: Don't run with two --limits
...
Conflicts:
test/unit/plugins/provisioners/ansible/provisioner_test.rb
2014-04-26 11:55:59 +02:00
Timothy Messier
c4ae0badc3
Force overwrite of salt configs and keys.
...
This will tell the salt-bootstrap script to overwrite the master/minion
configs and/or keys each time provision is called. #3524 #3176
2014-04-24 11:56:54 -04:00
Mitchell Hashimoto
1c7faae1ee
provisioners/*: prefix the output
2014-04-21 13:56:19 -07:00
Emilien Kenler
b77bd3e6bb
Unit test + vault password file existence check
2014-04-21 13:56:16 -07:00
Emilien Kenler
dd06dffe85
Ansible Vault support
...
Add the following options to the Ansible provisioner:
- ask_vault_pass
- vault_password_file
2014-04-21 13:56:15 -07:00
Mitchell Hashimoto
bed34a730b
provisioners/docker: fix module name for new docker provider
2014-04-21 13:54:35 -07:00
Mitchell Hashimoto
2929f7a853
provisoiners/chef: windows command builder
2014-04-21 13:54:08 -07:00
Mitchell Hashimoto
7022b1c29d
provisioners/chef: command builder for Linux
2014-04-21 13:54:06 -07:00
Mitchell Hashimoto
909cda4bd1
provisioners/chef: reinit net shares on Windows guests
2014-04-21 13:54:05 -07:00
Mitchell Hashimoto
427d49402d
provisioners/cfengine: fix typo
2014-04-21 13:54:04 -07:00
Mitchell Hashimoto
72030d2180
Note provisioners that don't work on Windows guests
2014-04-21 13:54:02 -07:00
Mitchell Hashimoto
bd51c16700
provisioners/puppet: execute properly with WinRM
2014-04-21 13:54:00 -07:00
Mitchell Hashimoto
1a0cb9b4c1
privisioners/puppet: wait for reboot on Windows
2014-04-21 13:53:59 -07:00
Mitchell Hashimoto
bec2cbbf4d
provisioners/shell: check for winrm should be on machine config
2014-04-21 13:53:56 -07:00
Mitchell Hashimoto
4145aa6bcd
privisioners/shell: wait for reboot if we can
2014-04-21 13:53:54 -07:00
Mitchell Hashimoto
4fc6fbeef6
privisioners/shell: fix syntax error
2014-04-21 13:53:53 -07:00
Mitchell Hashimoto
286fd2f2f8
provisioners/shell: friendly output if winrm shell provisioning
2014-04-21 13:53:52 -07:00
Mitchell Hashimoto
bddc7928ad
provisioner/shell: proper extension on temporary file
2014-04-21 13:53:50 -07:00
Mitchell Hashimoto
89671974cf
provisioners/shell: handle comm output in a uniform way
2014-04-21 13:53:49 -07:00
Mitchell Hashimoto
cde5d0bafb
privisioners/shell: execute windows script
2014-04-21 13:53:48 -07:00
Mitchell Hashimoto
aca8c4f8f3
provisioners/shelL: don't replace windows lineendings for WinRM
2014-04-21 13:53:47 -07:00
Mitchell Hashimoto
15fe061004
provisioners/shell: cause provision_winrm if winrm
2014-04-21 13:53:46 -07:00
Fabio Rehm
efc1122c42
provisioners/docker: Change to VagrantPlugins::DockerProvisioner namespace
2014-04-21 13:51:30 -07:00
Kenny Rasschaert
fc95e77237
provisioners/salt: error if minion_config missing
2014-04-19 23:24:30 +02:00
Mitchell Hashimoto
d0b0d5635c
provisioners/docker: debian install should apt-get update
2014-04-15 13:04:07 -07:00
Mitchell Hashimoto
544f404037
provisioners/docker: configure autostart works if OS can't check status
2014-04-15 12:18:37 -07:00
Mitchell Hashimoto
ac8d54132b
provisioners/docker: UPDATE CHANGELOG
2014-04-15 12:15:14 -07:00
Henry Hsu
91555d0a86
Fixes not enough time for docker restart before continuing on to next
...
provisioning step
2014-04-15 11:32:05 -07:00
Mitchell Hashimoto
8a9bbdb71a
provisioners/docker: fix linux cap for daemon running
2014-04-14 17:00:12 -07:00
Gilles Cornu
7ed17ae9ed
provisioners/ansible: use strict boolean options
...
With this change, the ansible provisioner fully complies with
the current user documentation.
2014-04-12 13:48:15 +02:00
Mitchell Hashimoto
1144217e2d
Merge pull request #3436 from gildegoma/ansible-inventory-path
...
provisioners/ansible: refer to directory that contains the generated inventory file
2014-04-11 21:16:14 -07:00
Mitchell Hashimoto
374d1c495a
provisioners/docker: auto-assigned name shouldn't have / [GH-3216]
2014-04-11 18:50:02 -07:00
Gilles Cornu
0098b7604d
provisioners/ansible: refer to inventory directory
...
By referring the directory that contains the generated inventory file,
users can easily provide more settings with additional files stored in
the same directory.
2014-04-11 08:20:32 +02:00
Mitchell Hashimoto
f47213f9b2
guests/coreos: docker_daemon_running cap [GH-3425]
2014-04-10 13:42:12 -07:00
Mitchell Hashimoto
e5d1d681d9
Update CHANGELOG
2014-04-09 14:17:51 -07:00
Bernhard Morgenstern
247a2470c0
Fixed error with empty shell provisioner
...
`read` returns nil on empty files, so the call to `valid_encoding` fails.
2014-04-09 22:56:15 +02:00
Martin Englund
53194f8e12
fix deprecated docker arguments
2014-03-29 22:49:52 -07:00
Mitchell Hashimoto
b0f8d050f0
provisioners/salt: style nitpicks
2014-03-12 20:04:57 -07:00
Mitchell Hashimoto
24d8067c7b
Merge pull request #3126 from bbinet/fix-salt-provisioning
...
provisioners/salt: allow master key with no minion key
2014-03-11 09:05:50 -07:00
Mitchell Hashimoto
5a3a501455
provisioners/ansible: request SSH info within provisoin [GH-3111]
2014-03-11 09:03:23 -07:00
Bruno Binet
9625957203
Fix salt provisioning validation
...
(mismatch between minion/master)
2014-03-11 15:18:24 +01:00
Gilles Cornu
1d09fc4a79
provisioners/ansible: add new option raw_ssh_args
...
Since the Ansible provisioner now potentially exports ANSIBLE_SSH_ARGS
variable, it is fair to allow to extend the content of this environment
variable (`ssh_args` parameters from ansible.cfg file have lower
priority)
2014-03-09 22:47:24 +01:00
Gilles Cornu
1c0bc20d21
Ansible: Re-enable ControlPersist defaults when ANSIBLE_SSH_ARGS is used
...
Solve problem discussed in [GH-2952]
2014-03-09 22:41:36 +01:00
Mitchell Hashimoto
fa537740c6
provisioners/shell: use detail level output for running
2014-03-08 14:43:35 -08:00
Mitchell Hashimoto
4c9e6e46b2
provisioners/salt: don't use exteranl deep_merge [GH-2348]
2014-03-07 09:18:34 -08:00
Gilles Cornu
1d328f7021
provisioners/ansible: Disable host key checking
...
Close #3060
2014-03-06 23:55:08 +01:00
Mitchell Hashimoto
ada5e8bf7f
provisioners/docker: actual auto assign name logic
2014-03-04 07:32:25 -08:00
Mitchell Hashimoto
857b989c47
provisioners/docker: setting to not auto assign name
2014-03-04 07:31:13 -08:00
Matthias Kadenbach
8f76d5e2cd
added as ``args << ``
2014-03-03 16:30:42 +01:00
Matthias Kadenbach
f6db54b2dc
Set param -name automatically (docker run)
...
``-name`` ist needed for linking containers, i.e. see http://docs.docker.io/en/latest/use/working_with_links_names/#working-with-links-names
2014-03-03 14:20:33 +01:00
Gilles Cornu
cf8bfb2347
Ansible: Refactor handling of SSH vars/attributes
...
Avoid repetitions by using (sometimes lazy loaded) instance attributes
2014-02-28 09:07:52 +01:00
Gilles Cornu
db490c5da5
Ansible: force 'ssh' connection only when needed
...
Remain in 'smart' mode, unless Multiple SSH identities or SSH-Forwarding
are in use.
2014-02-28 09:07:51 +01:00
Bryan Hunt
9480edf05a
Ansible: Support SSH-Forwarding
...
Credits: Problem was originally reported in
dba02f3526
by @picsolvebryan
2014-02-28 09:07:51 +01:00
Gilles Cornu
ca1e30d405
Ansible: Support multiple private keys
...
Note that this feature requires to force `--connection=ssh`. This is not
a big deal as `paramiko` mode is deprecated and in most cases `smart`
mode enables `ssh` mode.
2014-02-28 09:07:51 +01:00
Gilles Cornu
a62d28fd7f
provisioners/ansible: remove an unused variable
...
Sorry, I missed that point in GH-2991 review.
[ci skip]
2014-02-28 09:00:05 +01:00
Mitchell Hashimoto
a1b29ca82b
Merge pull request #2991 from gildegoma/review-pr2926
...
provisioner/ansible: Ansible single inventory file
2014-02-27 11:30:12 -08:00
Mitchell Hashimoto
12c740898c
provisioners/puppet: append module path (default) [GH-2677]
2014-02-24 08:09:24 -08:00
Mitchell Hashimoto
32c45aa70b
Revert "Merge pull request #2677 from purpleidea/fix_puppet_apply"
...
This reverts commit 9ac4ec85dd
, reversing
changes made to 8dbad22d72
.
2014-02-24 08:07:57 -08:00
Mitchell Hashimoto
6c5179602c
provisioners/salt: error if minion_config missing [GH-2893]
2014-02-24 07:58:12 -08:00
Gilles Cornu
1cd2fe56a0
ansible: generate inventory in .vagrant/...
2014-02-24 16:52:38 +01:00
Mitchell Hashimoto
a667893cbf
provisioners/shell: error if invalid encoding [GH-3000]
2014-02-23 21:50:53 -08:00
Mitchell Hashimoto
5ebe007ddc
Merge pull request #3005 from ajw0100/fix-salt-options-error
...
provisioners/salt: Fix "options are only allowed before install arguments" error.
2014-02-23 21:25:42 -08:00
Teemu Matilainen
7d90191212
provisioners/chef: DRY up `environment` and `node_name` configuration
2014-02-21 23:28:46 -03:00
Teemu Matilainen
24f7d7b9eb
Merge pull request #2975 from shanegibbs/chef-solo-role-path
...
Add support for multiple role paths in chef-solo >= 11.8.0
2014-02-21 23:58:10 -02:00
A.J. Welch
9f0efc19a9
Fix "options are only allowed before install arguments" error.
...
This reverts feb748f488
and 7cd7077467
. `bootstrap_options` is
meant for flag options such as `-D`. This is demonstrated in the
example Vagrantfile from the original plugin:
github.com/saltstack/salty-vagrant/blob/develop/example/complete/Vagrantfile
Flag options must be appended to the options string before install
args such as `install_type` and `install_args`.
2014-02-19 20:24:05 -08:00
Teemu Matilainen
eea9c07029
provisioners/chef: set `encrypted_data_bag_secret` to `nil` if it's not uploaded
...
/cc @shanegibbs
Fixes #2984
2014-02-16 18:14:56 -03:00
Gilles Cornu
709f3f4e6f
provisioners/ansible: Change --limit behaviours
...
- The implicit default limit is always set
- ansible.limit as an empty string won't disable the default limit, but
will be passed as "--limit=" argument and ansible-playbook will return
an error (provided host list is empty)
2014-02-16 11:39:15 +01:00
Gilles Cornu
c2663f5d30
provisioners/ansible: Fix Group Management
...
- Support arbitrary depth of "groups of groups of ... groups"
- Skip ':vars' suffix, but allow group names with ':' (yes, Ansible
accepts this character)
- Like for groups of machines, groups of groups can result "empty", but
it is not an issue for Ansible. Recursive filter on the group tree is
a bit hard to implement, and don't brind real added value at Vagrant
level.
2014-02-16 11:20:00 +01:00
Teemu Matilainen
ad34d474bc
provisioners/chef: DRY and unify encrypted data bag secret handling
...
Pull up encrypted data bag secret management into the base classes, thus
also unifying the functionality.
Especially this complements the issues:
* Upload the secret to provisioning path also with chef-solo [GH-1246]
* Delete the secret also with chef-client [GH-2712]
* Remove the secret before uploading also with chef-client [GH-1111]
2014-02-15 22:46:48 -03:00
Mitchell Hashimoto
8c9fde41e9
provisioners/shell: clean up fixnum handling
2014-02-14 12:43:27 -08:00
Ryan Uber
509e29043a
Added handling of fixnum values for shell provisioner options both as the value
...
of `args` itself and as an element inside of an `args` array. Added validation
around passing in arrays for arguments. Just knowing that it is an array is not
enough, because arrays can contain any other type.
2014-02-14 11:47:36 -08:00
Shane Gibbs
5600bd1067
Add support for multiple role paths in chef-solo
2014-02-14 21:48:18 +13:00
Mitchell Hashimoto
59d257f832
provisioners/puppet: mergeable config
2014-02-03 22:27:23 +01:00
Mitchell Hashimoto
d864187b1a
provisioners/docker: configuration is mergeable
2014-02-03 22:23:26 +01:00
Mitchell Hashimoto
38c2a48ff4
provisioners/docker: always pull images [GH-2901]
2014-02-03 16:26:38 +01:00
Mitchell Hashimoto
1d69e95c1c
provisioners/docker: config to disablize -d flag
2014-02-03 16:14:59 +01:00
Gilles Cornu
466cf58476
ansible generated inventory: skip group variables
...
Except ':children' for groups of groups, it is safer to avoid generating
':suffix' blocks. At the moment Ansible only supports (but doesn't
recommend) group variables (:vars), and the Vagrant Ansible provisioner
won't support this way to define variables.
2014-02-02 23:28:04 +01:00
Gilles Cornu
f564bf7410
Ansible Groups: Accept single item as String
...
Syntax errors in `ansible.groups` definition are not well handled:
Error returned: undefined method `each' for "machine1":String (NoMethodError)
Being tolerant here doesn't hurt and may avoid people get
confused/annoyed.
2014-02-02 23:21:06 +01:00
Gilles Cornu
84308964e2
ansible generated inventory: deal with orphan VMs
...
env.active_machines can potentiall return 'invalid' machines:
- Ignore machines that are not declared in current Vagrantfile
- Warn when machines are missing (it usually occurs when the VM is
removed without `vagrant destroy` and some orphan metadata remains
in .vagrant/machines/...)
2014-02-02 23:06:27 +01:00
Mark Aaron Shirley
3bf5032d4b
Update Ansible provisioner to only create a single inventory file
...
The Ansible provisioner will now only create a single inventory file named,
"vagrant_ansible_inventory". All defined Vagrant machines will be added to
this inventory file. Provisioning will now include a "--limit=#{machine}"
option to scope Ansible provisioning tasks to just the current machine. Setting
the Ansible provisioner's "limit" config option will override the new default
limit. Ansible provisioning scripts will now have access to all other defined
machines and what groups they reside in.
2014-02-01 13:04:20 -08:00
Teemu Matilainen
b52958bfb6
provisioners/file: expand destination path if capable
2014-02-01 01:23:09 -03:00
Mitchell Hashimoto
09955be2cd
provisioners/docker: configure auto start properly for new Docker
...
[GH-2874]
2014-01-21 20:52:27 -08:00
Mitchell Hashimoto
a19e442cf2
provisoiners/docker: only add user to group if not in it [GH-2838]
2014-01-16 10:34:08 -08:00
Mitchell Hashimoto
ead1382343
provisioners/docker: fix wrong variable usage
...
caught by @pda
2014-01-15 17:33:55 -08:00
Mitchell Hashimoto
2ca498a5dd
provisioners/docker: build images using new DSL
2014-01-14 09:22:55 -08:00
Mitchell Hashimoto
b3de12702a
Merge branch 'add_building_local_dockerfiles' of https://github.com/jpfuentes2/vagrant into jpfuentes2-add_building_local_dockerfiles
2014-01-14 08:17:44 -08:00
Mitchell Hashimoto
6a7e07c53f
provisioners/chef: don't follow symlink when chown
2014-01-11 08:02:59 -08:00
Mitchell Hashimoto
fcae8dd687
Merge pull request #2766 from graingert/patch-1
...
provisioners/salt: Allow defining of <install-type> and <install-type-args>
2014-01-10 15:43:25 -08:00
Teemu Matilainen
64ea647e09
provisioners/chef-solo: Fix copy&paste "Puppet" from a deprecation message
2014-01-08 13:27:35 -03:00
Thomas Grainger
feb748f488
Allow defining of <install-type> and <install-type-args>
2014-01-06 12:22:43 +00:00
Mitchell Hashimoto
e29bcba955
provisioners/puppet: alphabetize
2014-01-02 14:44:49 -08:00
Mitchell Hashimoto
040e1a2e0a
provisioners/chef: synced_folder_type
2014-01-02 14:40:57 -08:00
Mitchell Hashimoto
1da271c536
provisioners/puppet: synced_folder_type [GH-2709]
2014-01-02 14:37:47 -08:00
Mitchell Hashimoto
7f5c85cf20
provisioners/chef-solo: delete data bag secret [GH-2712]
2013-12-31 10:44:08 -08:00
Marc Meszaros
13ff159d8c
Fix salt provisioner error namespace to be more consistent with other provisioners
2013-12-27 22:38:44 -05:00
Marc Meszaros
194d7d11cd
Add error messages to localization file for salt provisioner
2013-12-27 22:37:54 -05:00
Tobias Bähr
364488eba8
Set default value to avoid a prompt
2013-12-22 18:48:14 +01:00
Mitchell Hashimoto
9ac4ec85dd
Merge pull request #2677 from purpleidea/fix_puppet_apply
...
provisioner/puppet: do not prepend default path because it can override modules.
2013-12-18 08:31:21 -08:00
James Shubin
d4c76d1bcf
Do not prepend default path because it can override modules.
...
It is common for Puppet to manage itself. If the puppet code you are
deploying pushes files to /etc/puppet/modules/, then prepending this
path can break deployment because it will override the module path if
the deployment code is changing. There is no good reason to include this
path. Puppet has built in defaults for this reason.
2013-12-17 14:29:54 -05:00
Charles Blaxland
7518bf94eb
Force rm of chef config files #2669
2013-12-17 17:53:52 +11:00
Gilles Cornu
e5f45e2b79
Ansible: Fix a bug in `raw_arguments` option
...
Without this change, it is not possible to pass more than one "raw"
argument, which was not the expected behavior. In addition to Array
format, String (for a single argument) is still accepted (for sake of
"backward compatibility" and ease of use).
Note: Due to low/expert usage of this option, I think that it is not
necessary to add more robust validation on this parameter (e.g. Array
of String type checking or argument syntax pattern matching). Use it at
your own risk ;-)
2013-12-16 21:20:10 +01:00
Gilles Cornu
213534d185
Merge pull request #2606 from maspwr/ansible-groups
...
Add ability to use Ansible groups in generated inventory. Fixes #2551 .
2013-12-14 07:03:22 -08:00
Fabio Rehm
46ba43e6ac
provisioners/docker: Display warning in case a version get specified on the Vagrantfile and the guest is a RedHat-ian guest [GH-2649]
2013-12-13 23:06:20 -02:00
Fabio Rehm
6f304d5e29
provisioners/docker: Move DockerConfigureVagrantUser capability up to Linux guests [GH-2649]
2013-12-13 23:06:20 -02:00
Fabio Rehm
5a842fc609
provisioners/docker: Check if epel-release is installed on RedHat-ian guests before attempting installation [GH-2649]
2013-12-13 23:06:20 -02:00
Naoto TAKAHASHI
746d406558
add docker for redhat
2013-12-14 02:35:34 +09:00
Teemu Matilainen
d321b9199e
provisioners/chef: fix node/client deletion when node_name is not set [GH-2345]
...
V2 config uses `hostname` instead of `host_name`.
2013-12-13 00:51:22 -03:00
Arthur Neves
c57073da7b
Rename docker_client and docker_installer
...
We can rename those classes and remove the docker_ prefix as they
already have a module namespace.
2013-12-12 14:59:03 -05:00
Jacques Fuentes
579cc8e558
Remove defunct @build_options reference
2013-12-09 18:36:57 -05:00
Jacques Fuentes
1738f9dccf
Add option to Docker provisioner to build local images
2013-12-09 17:54:32 -05:00
Mark Aaron Shirley
906579d25a
Add ability to use Ansible groups in generated inventory. Fixes #2551 .
2013-12-08 23:08:03 -08:00
Mitchell Hashimoto
89f4e14ab3
Merge pull request #2585 from mitchellh/2585-fix-docker-image-assignment
...
provisioner/docker: unable to run multiple docker containers based off the same image
2013-12-06 14:56:15 -08:00
Teemu Matilainen
b0919b916b
Remove extraneous character
...
Going down? ;)
2013-12-06 18:57:27 -03:00
Mitchell Hashimoto
17b68f7d50
provisioners/puppet: use unique directory for each definition
2013-12-06 12:39:50 -08:00
Mitchell Hashimoto
f8223d4704
provisioners/chef: support proper counter for multiple chefs
2013-12-06 12:26:48 -08:00
Mitchell Hashimoto
38f931ba93
provisioners/shell: array args properly work
2013-12-06 11:28:32 -08:00
Fabio Rehm
8688c6b8b2
provisioners/docker: Only assign the `image` config in case it was not specified
2013-12-05 22:12:44 -02:00
John Bellone
bebaa63063
[provisioner/chef]: Update base to fix typo.
...
It seems this was introduced by accident with #2281 .
2013-12-05 15:24:53 -05:00
Fabio Rehm
7e0b0a5a3c
provisioners/docker: Extract container lookup method
2013-12-04 22:13:17 -02:00
Fabio Rehm
c7a5592b96
provisioners/docker: Ensure checks for whether the container exists / is running works accross multiple Docker versions [GH-2579]
2013-12-04 22:10:39 -02:00
Mitchell Hashimoto
3df245f1fd
provisioners/chef: create/chown backup folders [GH-2281]
2013-12-04 11:51:05 -08:00
Mitchell Hashimoto
146bc34019
Merge pull request #2549 from mitchellh/f-docker-provisioner
...
docker provisioner
2013-12-03 17:47:42 -08:00
Mitchell Hashimoto
8f4fa897d0
provisioners/docker: use proper UNSET_VALUE for no value
2013-12-03 16:19:08 -08:00
Mitchell Hashimoto
999ce22354
provisioners/docker: output version when installing
2013-12-03 14:39:32 -08:00
Mitchell Hashimoto
f7916c0cff
provisioners/docker: output for each image pulling
2013-12-03 14:38:38 -08:00
Mitchell Hashimoto
ecbd0bfa85
provisioners/docker: style nitpicks
2013-12-03 14:36:14 -08:00
Mitchell Hashimoto
8d6cac959f
provisioners/docker: only allow 'args' special
2013-12-03 14:35:56 -08:00
Mitchell Hashimoto
33d3c28086
provisioners/docker: simplify run, output which are running
2013-12-03 14:33:13 -08:00
Mitchell Hashimoto
c55f7dfd64
provisioners/docker: allow images to be configured with images:
2013-12-03 14:25:20 -08:00
Mitchell Hashimoto
d3b7bffc65
provisioners/docker: style nitpick on unless
2013-12-03 14:19:31 -08:00
Mitchell Hashimoto
dda7cbb412
provisioners/docker: make sure version is correct type, fix Ruby warning
2013-12-03 14:18:30 -08:00
Mitchell Hashimoto
5ee3a06740
provisioners/chef: fix validate return so that it is properly formatted
2013-12-03 13:59:59 -08:00
Nicolas Delaby
7cd7077467
salt-bootstrap.sh: options are only allowed before install arguments
2013-11-29 15:52:12 +01:00
Fabio Rehm
3289141fc3
provisioners/docker: Clean up some leftovers from vocker
2013-11-29 10:22:06 -02:00
Fabio Rehm
82fc9330af
provisioners/docker: Simplify raising of Docker related errors
2013-11-29 10:22:06 -02:00
Fabio Rehm
0536817e90
provisioners: Import Docker provisioner code from Vocker
2013-11-29 10:22:06 -02:00
Mitchell Hashimoto
cfb258a55b
provisioners/shell: s/unless/if !/
2013-11-29 00:02:20 -08:00
Paul Hinze
fef60242b0
provisioners/shell: fix validation for args [GH-1949]
...
The logic change in 57d4775140
introduced
a bug where neither strings nor arrays provided as `args` for shell
provisioners would pass validation.
This fixes that problem along with a few extras:
- split out arg validation into a private method
- update comment describing valid args
- add a few unit tests around config validation
2013-11-28 19:54:10 -06:00
Mitchell Hashimoto
798432febe
provisioners/chef: validate environments path [GH-2381]
2013-11-26 18:57:27 -08:00
Mitchell Hashimoto
6f2d6981cb
website/docs: better Chef docs [GH-2436]
2013-11-26 11:44:16 -08:00
Mitchell Hashimoto
cd106986b4
provisioners/ansible: use the first private key
...
/cc @gildegoma - Does Ansible support multiple private keys? Vagrant
now does, so this isn't exactly safe.
2013-11-26 10:07:52 -08:00
Mitchell Hashimoto
9dfac9557b
provisioners/puppet: fix some bonehead mistakes
2013-11-25 22:46:10 -08:00
Mitchell Hashimoto
25a8491465
provisioners/puppet: manifests path can be in the VM [GH-1805]
2013-11-25 22:39:20 -08:00
Mitchell Hashimoto
8581a93e76
provisioners/chef: upload encrypted data bag secret to prov path
...
[GH-1246]
2013-11-25 15:55:00 -08:00
Mitchell Hashimoto
d08e3f7ab3
provisioners/puppet: use better flags for one-time run
2013-11-25 15:28:17 -08:00
Mitchell Hashimoto
4a3259443d
provisioners/puppet: make the output a bit clearer
2013-11-25 15:18:35 -08:00
Mitchell Hashimoto
e72cd9c98e
provisioners/puppet: can specify a client key/cert
2013-11-25 15:17:05 -08:00
Mitchell Hashimoto
57c25a26ad
provisioners/puppet: update config to new style
2013-11-25 15:07:12 -08:00
Mitchell Hashimoto
57d4775140
provisioners/shell: allow array args [GH-1949]
2013-11-25 13:36:51 -08:00
Mitchell Hashimoto
741930b439
Merge pull request #1949 from mpapis/feature/shell_provisoner_array_args
...
provisioners/shell: implement array arguments from #1569
2013-11-25 13:31:48 -08:00
Mitchell Hashimoto
cc57933675
update changelog
2013-11-24 21:29:04 -08:00
Mitchell Hashimoto
10daa6fddf
Merge pull request #2366 from gildegoma/ansible-extra-vars
...
provisioners/ansible: Improvements for 'extra_vars' argument
2013-11-24 21:21:44 -08:00