Dan Fuchs
97c819dc15
Merge branch 'master' of https://github.com/mitchellh/packer into ansible-inventory-dir
2017-04-20 10:34:03 -05:00
Weilu Jia
b1c5ccd3e2
Add version selection for chef-solo provisioner in Windows too
2017-04-17 18:16:34 -07:00
Michael Kuzmin
795921988e
provisioner/ansible-local: Convert Windows paths with backslashes to Unix style
2017-04-13 12:15:00 +03:00
Weilu Jia
c418307162
Add version selection for chef-solo provisioner
...
Prevents issues such as #1751 when chef changes major versions
2017-04-12 16:18:00 -07:00
Dan Fuchs
f45f4568db
make validateInventoryDirectoryConfig function
2017-04-06 14:50:02 -05:00
Dan Fuchs
39a9eac44f
Remove `req` param from validateDirectoryConfig
2017-04-05 09:14:30 -05:00
Dan Fuchs
3fc809c05b
Ansible provisioner: check if inventory directory exists during prepare
2017-04-04 22:49:24 -05:00
Dan Fuchs
492bff474b
Ansible provisioner: Specify full path to generated inventory file
2017-04-04 22:04:26 -05:00
Dan Fuchs
609e70face
inventory_directory option for ansible provisioner
...
Add an `inventory_directory` setting to the Ansible provisioner that
allows a user to specify a directory in which the Packer Ansible
provisioner would write the generated inventory file. If a value is
specified for this setting, then have the Packer Ansible provisioner
pass this directory as the -i arg when it calls ansible.
This would allow an Ansible playbook used by the Packer Ansible
provisioner to use variables specified in `host_vars` and `group_vars`
in this inventory directory.
2017-04-04 16:43:46 -05:00
Matthew Hooker
81522dced0
move packer to hashicorp
2017-04-04 13:39:01 -07:00
Matthew Hooker
6f27f67346
more fixes from errcheck
2017-03-29 13:38:31 -07:00
Matthew Hooker
de296ac06b
simplify
2017-03-28 20:45:25 -07:00
Matthew Hooker
35578d9ed1
remove unnecessary type conversions
2017-03-28 20:36:21 -07:00
Matthew Hooker
79287d7e47
simplify some code
2017-03-28 20:36:20 -07:00
Matthew Hooker
0149f679de
Print instead of Printf with no dynamic first variable.
2017-03-28 20:36:20 -07:00
Matthew Hooker
d1b20b3d9c
remove a bunch of dead code.
...
https://github.com/dominikh/go-tools/tree/master/cmd/unused
2017-03-28 20:36:20 -07:00
Matthew Hooker
230079f73a
spell fixes
2017-03-28 20:36:19 -07:00
Andrey Chernih
7548024720
More verbose error message when ansible-playbook fails
...
I've spent 1 hour today debugging why packer does not want to work with
ansible. It turns out `ansible-playbook` command was returning non-zero
exit status because of the file system permission problem.
Output before change:
% packer build rabbitmq.json
amazon-ebs output will be in this color.
1 error(s) occurred:
* exit status 1
Output after change:
amazon-ebs output will be in this color.
1 error(s) occurred:
* Error running "ansible-playbook --version": exit status 1
2017-03-21 20:26:41 -07:00
Matthew Hooker
6894f93085
Merge pull request #4534 from mitchellh/chefclean
...
provisioner/chef-client: only upload knife config if we're cleaning
2017-02-26 18:46:15 -08:00
Marc Carmier
78ab21b42f
Test error messages for restart_command and restart_timeout seems to be erroneous
2017-02-12 18:17:31 +01:00
Matthew Hooker
825f69c64d
provisioner/chef-client: only upload knife config if we're cleaning
2017-02-09 23:37:35 -08:00
Matthew Hooker
a836268490
fix test on windows
2017-02-06 11:29:39 -08:00
Matthew Hooker
0f445dff07
fix tests
2017-02-03 15:03:19 -08:00
Matthew Hooker
45030e1919
provisioner/anisble: use randomized staging dir
2017-01-27 16:14:35 -08:00
DanHam
370b67497e
provisioner/powershell: Don't over complicate removal of tmp output file
2017-01-26 11:21:45 +00:00
DanHam
21be983855
provisioner/powershell: Use system context env var to set output file path
...
Fixes #4271
2017-01-26 00:17:46 +00:00
DanHam
e350739ecb
post-processor/shell-local: expand tests to align with shell provisioner
2017-01-23 22:25:39 +00:00
DanHam
28051a9218
provisioner/windows-shell: fix and compact env var test
2017-01-23 12:10:46 +00:00
DanHam
e8db6b9b9a
provisioner/windows-shell: Remove env var check - again checked in prepare
2017-01-23 12:10:46 +00:00
DanHam
c88fafdf38
provisioner/powershell: align, fix and compact env var test
2017-01-23 12:10:46 +00:00
DanHam
4122f3a897
provisioner/powershell: Remove env var check - we already check in Prepare
2017-01-23 12:10:46 +00:00
DanHam
4514b1b10f
provisioner/shell: expand tests to align with powershell/win-shell
2017-01-23 12:10:46 +00:00
DanHam
0cbb4ff30c
provisioner/shell: Align gen of flattened env vars with powershell/win-shell
...
* Move code to generate quoted flattened env vars to separate function
* Fix: generate flattened env vars once per provisioner not once per script
2017-01-23 12:10:46 +00:00
DanHam
80ebcea5e1
Mirror cleaner test code back from windows-shell to powershell
2017-01-19 13:33:59 +00:00
DanHam
2bd9fa6c70
Use counter for index. Sort stray comments.
2017-01-19 12:12:00 +00:00
Matthew Hooker
c33cef9c12
tests for equals in windows-shell
2017-01-18 12:51:14 -08:00
DanHam
49bc2e353f
Fix to allow equals in value of environment variable. Mirrors #4328
2017-01-18 12:42:25 -08:00
Matthew Hooker
4e6a44f5f1
append will resize
2017-01-17 17:21:14 -08:00
Matthew Hooker
480398c3d2
only set PACKER_HTTP_ADDR if a server is listening
2017-01-17 17:17:36 -08:00
Matthew Hooker
6563eb213c
Document. add to windows-shell and powershell
2017-01-17 17:07:36 -08:00
Matthew Hooker
d2e59e4e92
set PACKER_HTTP_ADDR env var when available.
...
If using a builder that has an http server set up for file transfer,
expose the connection info to the shell provisioner through the environment
variable PACKER_HTTP_ADDR.
Closes #2869
2017-01-16 23:19:52 -08:00
Matthew Hooker
5fc6a2ee70
Merge pull request #4326 from asteris-llc/feature/converge-provisioner
...
New Provisioner: Converge
2017-01-04 10:46:18 -08:00
Matthew Hooker
6d6c7864b4
Merge pull request #4328 from DanHam/gh-3108
...
Allow equals sign in value of environment variable for Powershell provisioner
2017-01-03 12:38:17 -08:00
Sean Malloy
a617884a16
Add more tests for puppet-masterless provisioner
...
* Add tests for staging_directory config option
* Add tests for working_directory config option
2016-12-28 21:14:17 -06:00
Brian Hicks
feab6f096e
provisioner(converge): add prevent_bootstrap_sudo
2016-12-28 12:53:22 -06:00
Brian Hicks
fb6a5c5bbc
provisioner(converge): change skip_bootstrap back to bootstrap
2016-12-28 12:49:40 -06:00
Brian Hicks
64ebd3af8d
provisioner(converge): remove version validation
2016-12-28 08:49:08 -06:00
Brian Hicks
18425c45d0
provisioner(converge): change bootstrap to skip_bootstrap
2016-12-28 08:48:02 -06:00
Brian Hicks
5d935767f0
provisioner(converge): add bootstrap_command
2016-12-28 08:45:19 -06:00
Brian Hicks
843731d98d
provisioner(converge): add prevent_sudo
2016-12-28 08:19:03 -06:00
Sean Malloy
c226b19d08
Add additional unit tests for puppet-server provisioner
...
* Add puppet-server test for staging_dir config option
* Add puppet-server test for execute_command config option
2016-12-27 22:35:13 -06:00
DanHam
0423f91037
Fix to allow equals sign in value of environment variable
2016-12-28 00:33:16 +00:00
DanHam
be0196492f
Tests for env variables values starting with or containing an equals sign
2016-12-28 00:31:17 +00:00
Brian Hicks
3311d3a48d
provisioner(converge): interpolate execute_command
2016-12-27 16:48:11 -06:00
Brian Hicks
fe4b972d32
provisioner(converge): flatten execution fields
2016-12-27 16:32:19 -06:00
Brian Hicks
3658a0b6b5
provisioner(converge): remove log line
2016-12-27 16:31:12 -06:00
Brian Hicks
de918ac7a7
provisioner(converge): rename directory to working_directory
2016-12-27 16:07:16 -06:00
Brian Hicks
e6ba4c1929
provisioner(converge): remove version check
2016-12-27 16:03:35 -06:00
Brian Hicks
549ff50a3c
provisioner(converge): handle http error
2016-12-27 14:58:41 -06:00
Brian Hicks
b46a402a18
provisioner(converge): add tests for Prepare
2016-12-27 14:47:13 -06:00
Brian Hicks
73252b9a9b
provisioner(converge): reverse the meaning of bootstrap
2016-12-27 12:24:06 -06:00
Brian Hicks
b8849a9c2d
provisioner(converge): add version specification for bootstrapping
2016-12-27 12:22:17 -06:00
Brian Hicks
eca8690018
provisioner(converge): add actual provisioning step
2016-12-27 12:13:51 -06:00
Brian Hicks
73d5593242
provisioner(converge): add validate for source and destination
2016-12-27 11:41:52 -06:00
Brian Hicks
4f0034e574
provisioner(converge): transfer module directories
2016-12-27 11:29:36 -06:00
Brian Hicks
e2daefab71
provisioner(converge): improve error messages when Converge isn't found
2016-12-27 11:20:20 -06:00
Brian Hicks
03a8e309ba
provisioner(converge): add bootstrapping
2016-12-27 10:50:33 -06:00
Sean Malloy
ce43ade973
Add additional unit tests for puppet provisioners
...
* Add puppet-masterless test for packer_build_name default fact
* Add puppet-masterless test for packer_builder_type default fact
* Add puppet-server test for puppet bin directory
2016-12-26 23:11:27 -06:00
Sean Malloy
7feb8b993c
Add default facts for puppet-server provisioner
2016-12-22 15:53:59 -06:00
Taliesin Sisson
335615408a
Run go fmt on files
2016-12-12 22:45:19 +00:00
Taliesin Sisson
c88a2ef872
Remove trailing tabs
2016-12-12 22:45:10 +00:00
Taliesin Sisson
55353fae89
Fix spelling mistake
...
Fix code type for formatting
Remove empty space
2016-12-12 22:45:09 +00:00
Taliesin Sisson
f38d787b0e
Powershell uses UTF16Le for encodedCommand
2016-12-12 22:44:56 +00:00
Taliesin Sisson
e36051d394
Pattern for infrastructure changed to quote filename and execute file with ampersand as everything is run in powershell now
...
Handle powershell commands by specifying any extra infrastructure around running scripts inside of ExecuteCommand and ElevatedExecuteCommand
2016-12-12 22:44:55 +00:00
Taliesin Sisson
d61513bf77
Encode powershell using utf8
...
Fix a bug in the size of string that was returned when decoding a base64 string
Added tests around encoding and decoding powershell scripts. Used [System.Convert]::ToBase64String([System.Text.Encoding]::UTF8.GetBytes('powershell commands')) | clip to generate what base 64 strings should look like
2016-12-12 22:44:54 +00:00
Taliesin Sisson
17597b48e1
Base64 encode powershell to avoid any necessary escaping
2016-12-12 22:44:54 +00:00
Taliesin Sisson
5d5809b27e
Make hiding of progress backward compatible with old versions of powershell
2016-12-12 22:44:48 +00:00
Taliesin Sisson
e8c2b49be8
Use correct quotation of variables
2016-12-12 22:44:34 +00:00
Taliesin Sisson
4b394c8563
Write output will put ouput from function, so we don't want to be getting line from output of function
...
Fix unit tests for not showing progress stream when using powershell
Ensure that progress stream does not get leaked into stdout
Using Write-Output instead of Write-Host since PS v5 now leaks the host stream to stderr
2016-12-12 22:44:33 +00:00
Taliesin Sisson
c42cb88ddd
Using Write-Output instead of Write-Host since PS v5 now leaks the host stream to stderr
2016-12-12 22:44:32 +00:00
Taliesin Sisson
cd6213eb55
Seems like we do need to escape the double quote
2016-12-12 22:44:25 +00:00
Taliesin Sisson
15137310a7
Must escape string formatting for string fmt
2016-12-12 22:44:20 +00:00
Taliesin Sisson
5285a819dd
Quoting of powershell commands and associated tests
2016-12-12 22:44:19 +00:00
Taliesin Sisson
3051ea6633
Quote powershell so that it does not try to interpret command to be run
...
Get VName out of state. This allows template replacement to be run on vmname
2016-12-12 22:44:10 +00:00
Taliesin Sisson
6c3030c73a
Add a little safety around variables that are passed into provisioner.
2016-12-12 22:44:10 +00:00
Matthew Hooker
b49be38d74
Merge pull request #4210 from yoctocloud/fixes
...
various fixes
2016-12-12 12:33:19 -08:00
Matthew Hooker
c510988cbf
Merge pull request #4209 from bhcleek/ansible-winrm
...
provisioner/ansible: assume scp target is file (resolves winrm incompatibility)
2016-12-08 22:37:41 -08:00
Patrick Decat
5dd7fb11f4
Saltstack bootstrapping: fallback on wget if curl failed for any reason (such as not being installed)
2016-12-02 20:02:22 +01:00
Vasiliy Tolstov
00ebe9e1d3
various fixes
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2016-11-29 14:55:44 +03:00
Billie Cleek
f5ca0de225
provisioner/ansible: assume scp target is file
...
Assume the scp target is a file instead of a directory. Assuming the scp
target is a file instead of a directory allows uploading files to a node
being provisioned with the ssh communciator using sftp and with the
winrm communicator. It is fully compatible with ansible; ansible
communicators only allow for files (never directories) to be uploaded
(when the copy module is used to upload a directory, ansible walks the
directory and uploads files one at a time).
Update documentation to explain how to provision a Windows image.
Extend tests that use ssh to communicate with the node to include single
files, recursive copies, and content-only recursive copies.
Add test to verify support for the winrm communicator.
Remove the err argument from adapter.scpExec, because it was unused.
Fixes #3911
2016-11-26 14:40:39 -08:00
Matthew Hooker
12176b6afc
provisioner/shell: treat disconnects as retryable.
2016-11-22 15:59:40 -08:00
Jasper Siepkes
200aa74e78
Added support for passing arguments to salt-call.
2016-11-11 15:15:16 +01:00
Rickard von Essen
a616c3da3c
provisioner/ansible: Move info messages to log
...
Make the ansible provisioner less noisy by moving most messages to the
log instead of ui print outs.
Closes #4117
2016-11-05 14:25:45 +01:00
Matthew Hooker
d920b3fbf4
run gofmt
2016-11-01 14:08:04 -07:00
Rickard von Essen
f17bd30070
Revert "Removed escaped quotes in non-elevated powershell invocation"
...
This reverts commit 1b186f1613
.
2016-10-26 21:12:11 +02:00
Rickard von Essen
3b42d28cce
Merge pull request #4014 from mexisme/feature/puppet-bin-dir
...
privisioner/puppet: Add `puppet_bin_dir` option.
2016-10-22 14:48:45 +02:00
Rickard von Essen
3361da82d4
Added trailing slash after puppet_bin_dir.
2016-10-22 14:34:34 +02:00
Matthew Hooker
892d5e82c9
expect_disconnect option
...
provisioner/shell: Adds option to fail if the remote server disconnects
us.
2016-10-21 11:39:03 -07:00
Matthew Hooker
a1ef6398c3
Merge pull request #3371 from simonguest/powershell-envvars-fix
...
Removed escaped quotes in non-elevated powershell invocation
2016-10-19 18:50:39 -07:00
mexisme
314a4f4bbf
Add Puppet Bin Dir to puppet-server provisioner
2016-10-16 02:50:37 +13:00