111 Commits

Author SHA1 Message Date
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
2cdcc29902 provisioners/chef: put global lock around knife exec 2014-08-06 10:24:05 -07: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
Kalman Hazins
bb052366f7 Change symbols inside hashes to 1.9 JSON-like syntax 2014-05-22 12:35:12 -04: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
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
Mitchell Hashimoto
1c7faae1ee provisioners/*: prefix the output 2014-04-21 13:56:19 -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
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
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
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
Shane Gibbs
5600bd1067 Add support for multiple role paths in chef-solo 2014-02-14 21:48:18 +13:00
Mitchell Hashimoto
6a7e07c53f provisioners/chef: don't follow symlink when chown 2014-01-11 08:02:59 -08:00
Teemu Matilainen
64ea647e09 provisioners/chef-solo: Fix copy&paste "Puppet" from a deprecation message 2014-01-08 13:27:35 -03:00
Mitchell Hashimoto
040e1a2e0a provisioners/chef: synced_folder_type 2014-01-02 14:40:57 -08:00
Mitchell Hashimoto
7f5c85cf20 provisioners/chef-solo: delete data bag secret [GH-2712] 2013-12-31 10:44:08 -08:00
Charles Blaxland
7518bf94eb Force rm of chef config files #2669 2013-12-17 17:53:52 +11: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
Teemu Matilainen
b0919b916b Remove extraneous character
Going down? ;)
2013-12-06 18:57:27 -03:00
Mitchell Hashimoto
f8223d4704 provisioners/chef: support proper counter for multiple chefs 2013-12-06 12:26:48 -08: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
Mitchell Hashimoto
3df245f1fd provisioners/chef: create/chown backup folders [GH-2281] 2013-12-04 11:51:05 -08:00
Mitchell Hashimoto
5ee3a06740 provisioners/chef: fix validate return so that it is properly formatted 2013-12-03 13:59:59 -08: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
8581a93e76 provisioners/chef: upload encrypted data bag secret to prov path
[GH-1246]
2013-11-25 15:55:00 -08:00
Mitchell Hashimoto
2be01284ea provisioners/chef: fix exception during node cleanup [GH-2345] 2013-10-14 17:12:49 -10:00
Mitchell Hashimoto
9fcc89bcf1 provisioners/chef: use real variable in delete from chef sever [GH-2300] 2013-10-01 14:13:16 -07:00
Mitchell Hashimoto
33dd881ad7 provisioners/chef: disable color if Vagrant has no color [GH-2246] 2013-09-22 14:15:55 -05:00
Marc Schlaich
42e41eecc9 Removed duplicate entry. 2013-09-09 11:17:04 +02:00
Mitchell Hashimoto
0879c1d624 provisioners/chef: fix syntax error 2013-09-05 23:59:11 -07:00
Mitchell Hashimoto
a06742b8ef provisioners/chef: env config less restrictive 2013-09-05 16:34:21 -07:00
Mitchell Hashimoto
592a800f84 provisioners/chef: work with restrictive umask [GH-2121] 2013-09-05 16:12:56 -07:00