Matthew Patton
5c7d5fac75
expose OS-specific ModulePathJoiner
2018-05-08 12:21:04 -04:00
Matthew Patton
399edbe5e7
revert false economy WRT .ExtraArguments
2018-05-08 10:12:22 -04:00
Matthew Patton
b505cecd98
sync docs to code
2018-05-08 09:53:18 -04:00
Megan Marsh
51bcc7aa13
add new feature for telling shell-local whether to use linux pathing on windows; update docs with some examples.
2018-05-07 15:10:10 -07:00
Megan Marsh
e983a94a88
fix default windows bash call for shell-local provisioner and move chmod command from the execute_command array into the portion of code where we actually generate inline scripts, sparing users the need to think about this modification which Packer should really handle on its own
...
make bash call work on windows
2018-05-07 15:10:10 -07:00
Megan Marsh
6dc4b1cbdc
move all of the run commands for shell-local provisioner and postprocessor into common library too
2018-05-07 15:10:09 -07:00
Megan Marsh
926327beba
deduplicate all validation and interpolation of the shell-local config, sharing options between shell-local provisioner and post-processor. Maintain backwards compatibility with shell-local provisioner.
2018-05-07 15:10:09 -07:00
Megan Marsh
616b41e58f
deduplicate the nearly identical communicators for the shell-local provisioner and post-processor, moving single communicator into a new common/shell-local module
2018-05-07 15:10:09 -07:00
M. Marsh
23e51d21c2
Merge pull request #4300 from don-code/master
...
Allow skipping Chef Client staging directory cleanup.
2018-05-07 14:25:57 -07:00
Megan Marsh
fbbcbd772b
remove file stat
2018-05-03 11:08:41 -07:00
Matthew Patton
735f5273a0
tab/space fixup via gofmt
2018-05-01 17:16:47 -04:00
Matthew Patton
b2d78339b0
add missing removeDir() to allow StagingDir clean-up post-run
2018-05-01 17:04:40 -04:00
Matthew Patton
514a597825
alphabetize datastructures
2018-05-01 16:38:01 -04:00
DanHam
69ac7b56f6
Remove tmp files created by provisioner/windows-shell tests
2018-04-30 20:38:03 +01:00
DanHam
b738f41efa
Remove tmp files created by provisioner/powershell tests
2018-04-30 20:38:03 +01:00
DanHam
70ccb8adff
Remove tmp files created by provisioner/puppet-server tests
2018-04-30 20:38:03 +01:00
DanHam
fd07cfd2b1
Remove tmp files created by provisioner/puppet-masterless tests
2018-04-30 20:38:03 +01:00
Matthew Patton
b4bec692ed
remove accidental duplicate, initialize WorkingDir for puppet-server
2018-04-28 01:13:23 -04:00
Matthew Patton
47d46b0c64
use filpath() to make tests portable across Windows and non-Windows
2018-04-28 00:17:27 -04:00
Matthew Patton
8bb7798ea7
standardize across both puppet-{masterless,server}
...
move comments outside of datastructure
remove duplicated section
fix line-endings
Golang doesn't use C-style comments
run gofmt for alignment and whitespace management
remove danling "options" and fix class reference
syncronize tests to new command structure
2018-04-27 23:47:05 -04:00
Don Luchini
edb845b3f4
Allow skipping Chef Client staging directory cleanup ( fixes #3151 ).
2018-04-27 19:35:01 -04:00
Matthew Patton
5eb497a2c5
reorder terms and define an intermediate variable
...
(cherry picked from commit d0251f9741cf4d7659ecb4496d103f99a0e4184a)
(cherry picked from commit dab1b903ad88af0e3e40168634c1eb227078b4eb)
2018-04-27 18:04:36 -04:00
DanHam
7cf31060eb
Remove script containing Win-Shell inline commands from local tmp when done
2018-04-26 00:32:52 +01:00
DanHam
b9ab2c8048
Remove script containing PowerShell inline commands from local tmp when done
2018-04-26 00:32:52 +01:00
DanHam
ccf687dac6
Fix tests
2018-04-24 11:10:35 +01:00
DanHam
5419375413
Change to CMD % style path is no longer required
2018-04-24 11:10:35 +01:00
DanHam
5b652316d9
Dollar's in env vars used in paths may cause problems for ssh
...
* Dollars are interpreted by *nix shells so paths using env vars such as
${env:SYSTEMROOT} will cause issues
2018-04-24 11:10:35 +01:00
DanHam
4e7feea184
Allow users to specify the location that the env vars file is uploaded to
...
Previously the location the file was uploaded to was set internally and
used ${env:SYSTEMROOT}/Temp as the destination folder.
By default, in order to inject the required environment variables, the file
is 'dot sourced' by the 'execute_command' using the {{ .Vars }} variable.
Unfortunately the inclusion of the dollar in the path caused issues for
users connecting over ssh as the (typically bash) shell running the execute
command would try and interpret the dollar sign.
The change allows users to specify the location the file is uploaded to,
thereby allowing the user to specify a custom 'execute_command' that
escapes any dollar signs that could be present in the path.
If not set the upload path now defaults to using C:/Windows/Temp as the
upload folder.
2018-04-24 11:09:55 +01:00
Megan Marsh
3afb243f11
use build name to ensure that winrm password and other shared state is not overwritten if two builders need the password in the same packer run.
2018-04-16 13:41:17 -07:00
M. Marsh
56dd8cdb63
Merge pull request #3891 from nouney/f-generated-files
...
Add "generated" file tag to allow users to upload files created on the fly.
2018-04-05 16:08:38 -07:00
Omer Katz
c0719a3590
Allow using a custom inventory file.
2018-04-05 12:56:07 +03:00
Joshua C. Randall
406bf9c4aa
override ansible executor inventory to use InventoryDirectory instead of InventoryFile when set
2018-03-26 17:24:58 +01:00
DanHam
ef4817d644
Fix vertical spacing
2018-03-23 14:01:30 +00:00
DanHam
34db6c4ab1
Remove temp debugging output
2018-03-23 12:45:49 +00:00
Megan Marsh
072cd6b745
Merge pull request #5998 from hashicorp/do_5895
...
allow users of AWS to use the dynamically-generated admin password wh…
2018-03-22 16:01:22 -07:00
Megan Marsh
4e321b2dfa
don't need to use a receiver with this function
2018-03-22 15:55:24 -07:00
Matthew Hooker
732a532d0e
pass file info during shell file upload
2018-03-20 16:32:55 -07:00
Megan Marsh
ce1ab1f021
fix winrm password
2018-03-15 09:44:22 -07:00
Megan Marsh
559719020c
use {{.WinRMPassword}} instead of some other weirdness
2018-03-14 17:19:17 -07:00
Megan Marsh
d689e6b4d3
allow users of AWS to use the dynamically-generated admin password which we use as the winRM password as an elevated password in the Powershell provisioner, as well as an environment variable in same provisoner.
2018-03-14 15:58:12 -07:00
Megan Marsh
414dd80e61
Merge pull request #6013 from jsoref/spelling
...
Spelling
2018-03-14 09:50:27 -07:00
Megan Marsh
b33d6ce82e
fix salt provisioner on linux
2018-03-13 16:13:23 -07:00
Megan Marsh
e2f55a50b5
Merge pull request #5702 from brokenbot/salt-masterless-windows
...
Windows Support for salt-masterless provisioner #5432
2018-03-13 14:26:40 -07:00
Josh Soref
24b4c36fc9
spelling: function
2018-03-13 07:52:02 +00:00
Josh Soref
b545c6f87e
spelling: flattened
2018-03-13 07:50:25 +00:00
Josh Soref
04d6bfc696
spelling: environment
2018-03-13 07:41:21 +00:00
Josh Soref
684a3f5d8a
spelling: custom
2018-03-13 07:26:33 +00:00
Megan Marsh
f3a538db46
fix tests
2018-03-09 13:36:47 -08:00
Megan Marsh
3faf73b5f3
change backslashes to forward slashes in powershell provisioner; was breaking with cygwin
2018-03-09 09:29:29 -08:00
SwampDragons
7d9a86becb
Revert "Fix #5335"
2018-02-12 11:03:19 -08:00
DanHam
2d830d5d43
Auto escape chars special to PowerShell in user supplied data
2018-02-08 12:03:19 +00:00
DanHam
aaf7102b9a
Tests for escape of chars special to PowerShell in user supplied data
2018-02-08 12:03:18 +00:00
DanHam
a7b118ed94
Fix tests post changes. Add test for upload func.
2018-02-08 12:03:18 +00:00
DanHam
478589abec
Extend upload and subsequent 'dot sourcing' of env vars to std PS command
...
* Wrap funcs to flatten and upload env vars with new func prepareEnvVars.
While the wrapped funcs could be combined, keeping them separate
simplifies testing.
* Configure/refactor std and elevated PS to use new funcs to prepare,
upload and dot source env vars.
* Dot sourcing the env vars in this way avoids the need to embed them
directly in the command string. This avoids the need to escape the env
vars to ensure the command string is correctly parsed.
* Characters within the env vars that are special to PS (such as $'s
and backticks) will still need to be escaped to allow them to be
correctly interpreted by PS.
* The std and elevated PS commands now inject env vars into the remote
env via the same mechanism. This ensures consistent behaviour across the
two command types.
Fixes #5471
2018-02-08 12:03:18 +00:00
Marc Mercer
d3c7d43f20
Small typo correction
2018-02-07 19:47:01 -08:00
Marc Mercer
5d67f77f43
Fixing 5852
2018-02-07 19:41:01 -08:00
Megan Marsh
974d9974fe
add workaround for azure bug.
2018-02-07 11:34:18 -08:00
Megan Marsh
addedbb680
Revert "Merge pull request #5515 from DanHam/dot-source-env-vars"
...
revert so we can use a branch that's had more recent work done
This reverts commit e56849c605
, reversing
changes made to 6d14eb6ea4
.
2018-02-02 09:58:39 -08:00
Megan Marsh
79fe900378
Revert "Merge pull request #5376 from DanHam/ps-escapes"
...
Revert so that we can merge a different branch that's had more recent work instead
This reverts commit ba518637d4
, reversing
changes made to e56849c605
.
2018-02-02 09:57:36 -08:00
DanHam
7443adf2fd
Simpler escape of chars special to PowerShell in user supplied data
2018-02-01 13:19:07 -08:00
DanHam
68e13c90b1
Revert "Escape chars special to PowerShell in user supplied data"
...
This reverts commit 53aefe744bcd74ee6ac866f764eafe9e7f507d80.
2018-02-01 13:19:07 -08:00
DanHam
b67c64fd66
Tests for escape of chars special to PowerShell in user supplied data
2018-02-01 13:19:07 -08:00
DanHam
f3c326bb3c
Escape chars special to PowerShell in user supplied data
2018-02-01 13:11:05 -08:00
SwampDragons
e56849c605
Merge pull request #5515 from DanHam/dot-source-env-vars
...
Extend upload and subsequent dot sourcing of env vars to non-elevated Powershell cmd
2018-02-01 13:06:01 -08:00
Matthew Hooker
9f87213ba4
tests and docs for #5831
2018-01-31 13:08:25 -08:00
Matthew Hooker
3127bfbcfb
Merge pull request #5831 from uShip/chef-client-policyfiles
...
Added Policyfile support to chef-client provisioner
2018-01-31 12:54:27 -08:00
Matthew Hooker
aa76c47019
Merge pull request #5703 from frankdannhauer/5335
...
Fix #5335
2018-01-31 12:53:49 -08:00
Evan Machnic
5cedfc4557
Fixed go format errors
2018-01-31 11:06:31 -06:00
Evan Machnic
7354247933
Added policyGroup and policyName to Packer Communicator
2018-01-31 11:01:08 -06:00
Evan Machnic
fe90f79704
Changed new code to use tabs instead of spaces
2018-01-31 10:54:40 -06:00
Evan Machnic
1f92aa2c0a
Added Policyfile support to chef-client provisioner
2018-01-31 10:49:04 -06:00
Matthew Hooker
4bccbbba1f
Merge pull request #5790 from GennadySpb/trusted_certs_dir
...
Support 'trusted_certs_dir' chef-client configuration option
2018-01-23 13:11:27 -08:00
Matthew Hooker
ebe995c0ff
run goimports
2018-01-22 17:21:10 -08:00
Gennady Lipenkov
53aaf84100
Support 'trusted_certs_dir' chef-client configuration option
2018-01-13 01:53:49 +03:00
Aidan Feldman
b894c925d1
make user retrieval for Ansible provisioner more robust
...
Previously, the Ansible provisioner would look for the username from the
`USER` environment variable. Unfortunately, this is not always set -
particularly in Docker containers. It's very confusing to understand why
the error is happening.
Switched to using Go's built-in `os/user` package for retrieving the
current username. @rickard-von-essen had done this in 7369841
, but
moved away from it in d59844f
because, at the time, it wasn't possible
to use that library with cross-compilation. This was fixed in Go in
795e712b72
2018-01-03 02:52:41 -05:00
Hunter Morgan
6410fd615c
typo
2017-12-18 20:21:26 +00:00
frankdannhauer
893d0334f1
Fix #5335
...
https://github.com/hashicorp/packer/issues/5335
2017-12-14 14:00:52 +01:00
Dave Sanderson
fc566a3cb4
Added test for new commands and guest os type
2017-12-13 11:16:21 -07:00
Dave Sanderson
bf7a4b3363
remove erroraction on win removedir
2017-12-13 10:49:38 -07:00
Dave Sanderson
284b069003
Fixed stating of files on windows
...
added directory existence check to salt provisioner before directory clean up
2017-12-13 10:20:27 -07:00
Dave Sanderson
57770de36f
revert file stat
2017-12-12 16:01:00 -07:00
Dave Sanderson
a1ba4e5362
Silently continue on removeDir for Windows
...
Fixed parameter type exclusion in movePath command
2017-12-12 15:32:40 -07:00
Dave Sanderson
887b7dc476
Fix mixed case for mv
2017-12-12 15:24:34 -07:00
Dave Sanderson
aee67d3933
Add ability to move files on remote system
...
Fix salt-masterless to use generic MovePath
2017-12-12 15:22:10 -07:00
Dave Sanderson
857e5d04d3
Fix command error for salt install
2017-12-12 15:11:29 -07:00
Dave Sanderson
666796e8eb
Add ability to stat a remote path
2017-12-12 14:39:13 -07:00
Dave Sanderson
630b7466d6
updated test to remove old DefaultTmpDir reference
...
Fixed sudo logic
Fixed error message format issue for OSType check
2017-12-12 11:49:10 -07:00
Dave Sanderson
0efda50354
Initial Windows support
2017-12-12 11:36:38 -07:00
Megan Marsh
19c997cb0e
revert to using UI becuase the remote command syntax breaks things on linux with vmware fusion.
2017-12-07 09:08:12 -08:00
SwampDragons
753d3cf216
Merge pull request #5618 from kwilczynski/ansible-local-clean-staging-directory
...
ansible-local: Add ability to clean staging directory.
2017-11-30 14:27:59 -08:00
Casey Robertson
8f02150178
Changes Linux install URL to omnitruck. Changes powershell install to use omnitruck rather than hard-coded 32-bit url
2017-11-28 14:23:12 -08:00
Krzysztof Wilczynski
10370adbab
ansible-local: Add ability to clean staging directory.
...
Signed-off-by: Krzysztof Wilczynski <kw@linux.com>
2017-11-21 21:09:01 +01:00
SwampDragons
ce1f2457fd
Merge pull request #5563 from hashicorp/fix_5483
...
make restart command work correctly even if user has their own check …
2017-11-09 16:16:47 -08:00
Megan Marsh
c3cb7fe9f9
read from stderr so it doesnt lock up
2017-11-09 15:52:49 -08:00
Megan Marsh
9b1ae530c3
have separate stdout and stderr buffers
2017-11-09 15:35:28 -08:00
Matthew Hooker
e073d63f30
remove racy reuse of single buffer for remotecmd stderr/out.
2017-11-09 15:22:47 -08:00
Megan Marsh
6019e41544
dont read stderr
2017-11-09 15:18:43 -08:00
Megan Marsh
73b6247fd2
remove unnecessary boolean operator
2017-11-09 15:04:25 -08:00
Megan Marsh
e56a6dc9a0
add some comments
2017-11-09 14:55:12 -08:00
Megan Marsh
a739623d9b
don't pipe restarted stuff through the ui
2017-11-09 14:44:26 -08:00
Megan Marsh
d71bc34dfc
don't need this in a loop
2017-11-09 11:49:12 -08:00
Megan Marsh
d81871171c
make restart command work correctly even if user has their own check command
2017-11-07 15:01:02 -08:00
DanHam
4b89fc1c00
Fix tests post changes. Add test for upload func.
2017-10-30 21:08:14 +00:00
DanHam
5949bc91c4
Extend upload and subsequent 'dot sourcing' of env vars to std PS command
...
* Wrap funcs to flatten and upload env vars with new func prepareEnvVars.
While the wrapped funcs could be combined, keeping them separate
simplifies testing.
* Configure/refactor std and elevated PS to use new funcs to prepare,
upload and dot source env vars.
* Dot sourcing the env vars in this way avoids the need to embed them
directly in the command string. This avoids the need to escape the env
vars to ensure the command string is correctly parsed.
* Characters within the env vars that are special to PS (such as $'s
and backticks) will still need to be escaped to allow them to be
correctly interpreted by PS.
* The std and elevated PS commands now inject env vars into the remote
env via the same mechanism. This ensures consistent behaviour across the
two command types.
Fixes #5471
2017-10-30 21:08:13 +00:00
Matthew Hooker
ecad3348b3
rephrase log message.
2017-10-26 10:41:49 -07:00
Ohad Basan
33b85b0130
Add suggestion for "expected_disconnect" option if disconnection occurs
2017-10-26 19:53:48 +03:00
Matthew Hooker
75111e49e9
remove convoluted pointer logic
2017-10-11 23:35:24 -07:00
Matthew Hooker
bafcf7dfb1
test, document, cleanup puppet guest codde
2017-10-03 11:39:33 -07:00
Matthew Hooker
7523cc76de
Merge pull request #5340 from c22/issue_5339
...
Fix regression bug reported in #5339
2017-10-03 10:44:41 -07:00
Matthew Hooker
d26e28a028
Merge pull request #5341 from c22/issue_5338
...
Fix facterVar separator bug reported in #5338
2017-09-29 09:49:22 -07:00
DanHam
fa5fd602aa
Fix tests post changes
2017-09-26 11:07:26 +01:00
DanHam
8214a12a2a
Move append of portion of command used to send elevated PS output to file
2017-09-26 11:07:26 +01:00
DanHam
2a060adbf8
Don't use -EncodedCommand with PS as progress stream always leaks to stderr
...
* Setting $ProgressPreference to SilentlyContinue makes no difference
when -EncodedCommand is used - any output to the progress stream
still appears on stderr.
* Delete file containing encode/decode functions since we no longer
need them.
* Fixes leak of output on progress streams for both normal and elevated
commands.
* Since we no longer base64 encode, ensure any characters special to XML
are correctly escaped in the elevated command. This ensures correct
parsing once the command is wrapped within the elevatedTemplates XML
based Task Scheduler definition.
Fixes #4322
2017-09-26 11:07:11 +01:00
Matthew Hooker
2297cfaee2
Merge pull request #5357 from lochnesh/fix-windows-chef-solo-version
...
use flag -version instead of -v to install chef-solo on Windows
2017-09-25 18:18:16 -05:00
DanHam
5374c6e367
Use system context env var to set path for elevated PS env vars file
2017-09-21 12:08:29 +01:00
Skyler Nesheim
52d3137b08
use flag -version instead of -v to install chef-solo on Windows
2017-09-18 09:43:02 -05:00
Matthew Hooker
70e493a2c2
fix directory permissions when using sudo
2017-09-15 10:48:50 -07:00
Matthew Hooker
af1187d5e1
simplify a bit
2017-09-15 10:06:54 -07:00
Megan Marsh
b05c673a14
Update powershell provisioner test with new default
2017-09-15 08:17:17 -07:00
Megan Marsh
cbe1d7d854
simplify file upload for elevated powershell wrapper
2017-09-14 17:01:48 -07:00
Megan Marsh
92e70757bb
Move env vars into a file that we dot-source instead of trying to write them all to the command line
2017-09-14 17:00:57 -07:00
Megan Marsh
d458628529
exclude elevated_executed_command from config interpolation so it can be used correctly later
2017-09-14 10:50:32 -07:00
c22
948f955758
Fix regression bug reported in #5339
2017-09-14 11:44:14 +10:00
c22
cb12cd6668
Fix facterVar separator bug reported in #5338
2017-09-14 11:35:54 +10:00
Megan Marsh
c6889ad009
clarify logging by changing 'shell' to 'powershell' inside of the powershell provisioner
2017-09-06 11:59:25 -07:00
Megan Marsh
959db1ac16
add echo test to winrm connection.
2017-09-01 15:26:41 -07:00
Matthew Hooker
54920422ea
Merge pull request #5252 from c22/packer_4391_rework
...
#4391 rework (see #4426 )
2017-08-31 13:46:48 -07:00
Megan Marsh
f15304aa59
Merge pull request #5272 from hashicorp/fix_5064
...
Fix post-restart powershell failure
2017-08-28 11:41:37 -07:00
Megan Marsh
401c718a59
set default for ExpectDisconnect to false
2017-08-24 14:46:52 -07:00
Megan Marsh
b1001264ed
fix windows-restart tests
2017-08-24 14:30:15 -07:00
Megan Marsh
b2923b4da6
check stdout to make sure echo command actually goes through before counting computer as fully restarted
2017-08-24 12:10:27 -07:00
Megan Marsh
89b058604d
update tests for pull 5272
2017-08-22 14:20:40 -07:00
Megan Marsh
5214851463
make every script name unique
2017-08-22 14:03:28 -07:00
c22
42f1aa7a95
Refactor puppet-masterless based on puppet-server
2017-08-22 14:10:37 +10:00
c22
bc2e3de06d
Resolve merge conflicts and update documentation.
2017-08-22 14:10:37 +10:00
c22
80ba99c04f
Update documentation + small fixes
...
Updated the puppet-masterless documentation
Removed extraneous ConfigTemplate code
2017-08-22 14:10:37 +10:00
c22
fbac46af91
Linting + formatting
2017-08-22 14:10:37 +10:00
Sam Kerr
bcd30ad2f2
Update puppet-masterless commands to be OS specific
...
Previous implementation hardcoded "mkdir -p" which is fine for Unix, but
fails on Windows. This change draws on the example in the chef-solo
provisioner on how to detect the OS in use and use an appropriate mkdir
command.
In addition to updating the mkdir command, the actual executeCommand
needs to be OS specific, since Windows doesn't have sudo and Unix
doesn't require 'SET' when trying to change the value of a variable.
Modify the actual Windows command used to run Puppet.
Since the Facter vars on Windows are set with 'SET <varname>=<value>', a
'&&' is needed between the SET commands and the actual Puppet
invocation.
2017-08-22 14:10:37 +10:00
c22
1c592f291e
Better Windows support in puppet-server
...
Reworking the puppet-server provisioner based on chef-client.
2017-08-22 14:10:37 +10:00
Brett Russ
7192c46e46
sudo prefix the command which cleans up `/srv/{salt,pillar}` as these are created with sudo in the packer driven salt bootstrapper
2017-08-11 21:26:16 -04:00
Luke Farnell
d9a5b69403
clean up ineffectual assignments
2017-08-07 13:20:01 -04:00
localghost
daca0c2efe
Remove accidental dependency to moby's ioutils package.
2017-07-10 22:05:42 +02:00
localghost
079cbc263f
Add tests for playbook_files with playbook_dir.
2017-07-10 21:58:46 +02:00
Zbigniew Kostrzewa
33ae9cb2bb
Add test for playbook_files using docker builder.
2017-07-10 08:19:29 +02:00
localghost
9ea6313b68
Fix playbook_files test on Windows.
2017-07-06 21:28:27 +02:00
localghost
f682045345
Test for ansible-local playbook_files with mocked Communicator.
2017-07-06 06:44:03 +02:00
Zbigniew Kostrzewa
41d0adfbdd
Add playbook_files to execute multiple ansible playbooks.
2017-07-01 23:21:07 +02:00
Matthew Hooker
b1f06bbebb
fix wording
2017-06-26 12:56:55 -07:00
Matthew Hooker
56979a1974
Revert "Universally provide POSIX semantics for the `shell` provisioner."
...
This reverts commit 1ba7f9cc20
.
2017-06-21 16:11:47 -07:00
Matthew Hooker
67e29e1eff
disambiguates windows-restart messages.
2017-06-21 10:51:23 -07:00
Matthew Hooker
11379dea70
Merge pull request #5009 from sjlamerton/salt_bin_dir
...
Add support for salt_bin_dir
2017-06-13 10:21:53 -07:00
Matthew Hooker
8f685b3bcd
ansible: add skip_version_check flag
2017-06-07 13:31:56 -07:00
Matthew Hooker
70b3d05fb3
Merge pull request #4760 from fajpunk/ansible-inventory-dir
...
inventory_directory option for ansible provisioner
2017-06-07 11:22:23 -07:00
Steven Lamerton
e953898890
Add support for salt_bin_dir
...
Allows specifying the path to salt-call, useful if it isn't on the
path.
2017-06-07 08:16:23 +01:00
Matthew Hooker
bc16c13b50
Merge pull request #4961 from magicalbob/grains
...
Grains
2017-06-06 12:37:18 -07:00
Matthew Hooker
74bf0b636b
Merge pull request #4791 from optix2000/master
...
Add version selection for chef-solo provisioner
2017-06-05 15:30:48 -07:00
Ian Ellis
31f66b6fe9
Cloned GrainsFile test from MinionConfig test
2017-06-04 13:03:50 +01:00
Ian Ellis
912fc9c2af
Added grains_file config item to copy file to /etc/salt/grains
2017-06-04 08:31:30 +01:00
Sean Chittenden
1ba7f9cc20
Universally provide POSIX semantics for the `shell` provisioner.
...
All platforms everywhere have `env(1)` available, leverage it
accordingly.
Improves on: #2343
2017-05-20 09:28:02 -07:00
Matthew Hooker
7999f886b1
Merge pull request #4792 from mkuzmin/slash
...
provisioner/ansible-local: Convert Windows paths with backslashes to …
2017-04-26 15:20:49 -07:00
Dan Fuchs
8401057ed5
Merge branch 'master' into ansible-inventory-dir
2017-04-26 13:20:00 -05:00
Rickard von Essen
999f2da499
ansible-local/ansible: Add extra-vars packer_*
...
Added:
- `packer_build_name`
- `packer_builder_type`
- `packer_http_addr` - `ansible-local` only
Closes : #4820
2017-04-23 12:55:01 +02:00
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
mexisme
6f9294095f
Add Puppet Bin Dir to puppet-masterless provisioner
2016-10-15 22:39:50 +13:00
Matthew Hooker
d8439b0034
Merge pull request #3971 from mitchellh/fix3486
...
change chef-solo provisioner staging directory
2016-10-14 15:51:26 -07:00
Rickard von Essen
3c8dabba9e
Fixed formatting
2016-10-11 23:43:50 +02:00
Matthew Hooker
83131db4b8
Merge pull request #3776 from curiositycasualty/master
...
Add custom_state config to salt provisioner
2016-10-07 17:59:52 -07:00
Matthew Hooker
2ae1b83b15
change chef-solo provisioner staging directory
...
Have the staging directory be called `packer-chef-solo`, which is what
is given in docs. Closes #3486
2016-10-07 17:24:30 -07:00
Rickard von Essen
51a9a51699
Update winrm and winrmcp dependencies
...
Updated winrm and winrmcp dependencies. Relevant unit and acceptance tests passed successfully.
shell.Execute didn't return a Command object.
See f1bcf36a69/winrmcp/cp.go (L167)
and 54ea5d0147/winrm/shell.go (L10-L22)
respectively.
Closes #3763
Original patch by: Philipp Kosel <philipp.kosel@gmail.com>
2016-10-03 13:48:29 -07:00
Matthew Hooker
a8e57d83d2
gofmt project.
...
noticed many unrelated changes being added to patches because of gofmt.
ran `find . -not -path "./vendor/*" -name "*.go" -exec gofmt -w {} \;`
2016-09-29 14:13:06 -07:00
Matthew Hooker
efa594bebe
Merge pull request #3899 from pengkh/f-file-provisioner
...
continue add support for file-provisioner to allow directory downloa…
2016-09-22 18:32:57 -07:00
开恒
96a637684b
fix #3897
...
bug fix for file-provisioner download file, including unit-test code.
2016-09-19 10:36:18 +08:00
nouney
59dac451a5
provisioner/file: add "generated" key to allow files created on-the-fly.
2016-09-15 22:15:56 +02:00
Billie H. Cleek
f760ab2fd8
Make SCP the default for provisioner/ansible
...
Add a new option, `use_sftp` to the ansible provisioner. It's default
value is false; ansible provisioner will use SCP by default.
Refactor to consistently set all configure options for ansible
provisioner in the Prepare step.
Remove incorrect information about `ANSIBLE_HOST_KEY_CHECKING=False`
being set when `ansible_env_vars` is not set in the packer template.
Update BATS tests for the ansible provisioner to actually check that the
fetched directory contains the contents expected. This revealed a
problem with the all_options template that required adding a host to the
hosts list in the test playbook.
2016-09-11 23:58:31 -07:00
Billie H. Cleek
e6a0e523e2
refactor sftp subsystem request handling
...
Refactor the sftp subsystem request handling to make it more similar to
an exec request. This simplifies and improves the readability of the
code.
2016-09-11 23:58:31 -07:00
Billie H. Cleek
da223b9539
add scp support to ansible provisioner
...
Handle running `scp -t` and `scp -f` exec requests in the
ansible-provisioner's SSH
server to allow Ansible to use SCP so that SFTP doesn't have to be
installed on the node.
Update the BATS tests to test the ansible provisioner.
2016-09-11 23:58:31 -07:00
Spencer Owen
9963bfcd42
removes unneeded white space
2016-09-01 13:39:44 -06:00
Spencer Owen
7fdd303641
Installs 64bit chef on windows if available
...
Resolves #3847
- Changes linux install url to new omnitruck.chef.io url.
- Changes powershell install to use omnitruck url instead of hard coded to 32bit msi install.
2016-09-01 13:23:08 -06:00
Rickard von Essen
d1e38052f7
Merge pull request #3350 from JoakimLofgren/add-support-for-ansible-galaxy
...
Add support for ansible-galaxy
2016-09-01 20:51:17 +02:00
Billie Cleek
023f2edde8
add better logging and error handling to ansible provisioner ( #3477 )
2016-08-24 19:53:39 +02:00
Isa
bb2dd6e2b2
add custom_state config to salt provisioner
2016-08-03 12:56:51 -07:00
Chris Bednarski
32cbb515b5
Merge pull request #3692 from mohae/3474-file-mkdir-all
...
3474 file mkdir all
2016-07-07 16:44:15 -07:00
Joel Scoble
94d158b0b7
remove debug fmt.Print from test
2016-07-07 18:12:54 -05:00
Ricard Clau
049fb2d9c1
actually check for errors in functional tests
2016-07-07 20:01:23 +01:00
Ricard Clau
0c81e49f83
Adding a functional test with an Ansible message very long
2016-07-07 01:12:57 +01:00
Chris Bednarski
664e640257
Merge pull request #3392 from msteinhoff/fix-ansible-provisioner-long-lines
...
Fix Scanner buffer too long error in ansible-remote provisioner
2016-07-06 15:27:57 -07:00
Joel Scoble
999b8b2ed0
file provisioner: download should create all dirs in the destination path
2016-07-06 15:42:26 -05:00
Jamie Snell
7b3224f3c7
rename KnifeChefTemplate to KnifeTemplate
2016-06-14 13:42:53 -05:00
Jamie Snell
4847e891b0
Fix knife clean-up run on windows
2016-06-14 13:34:25 -05:00
Tom Asquith
40aa2b9973
added support for specifying an execute command to the puppet-server provisioner.
2016-06-13 14:12:28 +01:00
Billie Cleek
49067e732a
append ANSIBLE_HOST_KEY_CHECKING correctly ( #3568 )
...
Append the ANSIBLE_HOST_KEY_CHECKING environment variable correctly
regardless of whether the template specifies some environment variables.
2016-05-24 15:34:51 -07:00
Justin Nauman
f2b0fabe66
Fixes #3466 - Remote path needs to be set prior to config interpolation ( #3468 )
2016-04-29 19:21:27 -07:00
Ian Duffy
7e653370b7
Seperate remote_path into remote_folder and remote_script. ( #3462 )
...
Commonly /tmp is set as noexec, as a result packer scripts
fail to run. In order to get around this one can set a
remote_path, whoever, remote path requires full filename
and path.
By making remote_path a combination of
remote_folder/remote_script we can change remote_folder
and keep the default script_nnn.sh
Signed-off-by: Ian Duffy <ian@ianduffy.ie>
2016-04-26 16:04:29 -07:00
Mario Steinhoff
b5f6e379f0
Fix Scanner buffer too long error in ansible-remote provisioner
...
Ansible may produce very long lines which Scanner can not handle. This
replaces the Scanner with a Reader and uses the ReadString method to
read an arbitrary large line from the ansible-playbook stdout pipe.
2016-03-28 21:27:42 +02:00
Simon Guest
1b186f1613
Removed escaped quotes in non-elevated powershell invocation
2016-03-20 20:28:08 -07:00
Joakim Löfgren
1172e670c0
Add support for ansible-galaxy
...
This adds "galaxy_file" to the options
Implement #3301
2016-03-14 18:26:56 +01:00
Keyan Pishdadian
f3811cb99d
Add ignore_exit_codes param for puppet-masterless provisioner
2016-03-13 23:39:18 -04:00
Rickard von Essen
d59844f0d1
Determine current user without CGO.
2016-03-07 13:35:24 +01:00
Rickard von Essen
7369841e63
Ansible: add the support for specifying ansible_user
...
Closes #3273
2016-03-07 13:35:24 +01:00
Rickard von Essen
d6716f6ee1
Ansible: don't use deprecated ssh options when ver above 2.0
...
Ansible 2.0 deprecated ansible_ssh_user, ansible_ssh_port, ansible_ssh_host
instead use ansible_user, ansible_port, and ansible_host in the
inventory file.
Closes #3275
2016-03-07 13:26:22 +01:00
Rickard von Essen
f823725e53
Ansible: os.Environ() should always be passed to the ansible command.
...
Fixes GH-3271
Regression introduced in GH-3203
2016-02-26 20:49:37 +01:00
Vespian
4750da3457
Add empty_groups param to ansible provisioner
2016-02-19 23:46:50 +01:00
Marat Bakeev
2791542171
Allow specifying environment variables for ansible provisioner
2016-02-15 13:07:02 +13:00
Chris Bednarski
6dd02e7912
Update ansible test to use the new Downloader interface
2016-02-12 14:53:23 -08:00
Vasiliy Tolstov
feee19e4ed
file provisioner improvements
...
* allow specify source/destination as dir
* allow specify many files as source
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2016-02-12 11:48:28 -08:00
Chris Bednarski
d8aaf6175f
Merge pull request #2470 from jsoriano/puppet-masterless-clean-staging
...
Puppet masterless provisioner optionally cleans staging directory
2016-02-11 17:39:35 -08:00
Chris Bednarski
3ae867446d
Merge pull request #2660 from mafrosis/saltp
...
Salt provisioner updates
2016-02-11 16:37:06 -08:00
Billie H. Cleek
0cd54ed19e
add options to configure host alias and groups
2016-02-10 23:33:14 -08:00
Chris Bednarski
a6552f7c75
Merge pull request #3166 from ephemeralsnow/master
...
Add chmod to chef-solo provisioner
2016-02-10 19:23:47 -08:00
Billie Cleek
a5ab53bf5e
update ansible tests
...
Update tests to account for changes made in #3149
2016-02-10 14:16:02 -08:00
Billie Cleek
a23610ef41
cleanup ansible provisioner key generation
...
* Clearly separate host signer and user key generation into separate
functions and data structures.
* Remove inaccurate comment about needing to specify both files if
either one is specified.
* Rename parameters for clarity according to their meaning to the
callee.
* Style the code with gofmt.
2016-02-10 14:16:02 -08:00
ephemeralsnow
3de8561a75
Add chmod to chef-solo provisioner
2016-02-09 20:06:26 +09:00
Chris Bednarski
569e6cc464
go fmt
2016-02-08 17:34:06 -08:00
Marat Bakeev
c95b2b483f
Merge branch ansible-provisioner of https://github.com/dkhenry/packer
2016-02-05 15:40:17 +13:00
Chris Bednarski
114bddfe36
Merge branch 'master' of https://github.com/mitchellh/packer
2016-02-01 13:28:56 -08:00
Chris Bednarski
1f6749096a
Restore missing interpolation after merging ansible remote; fixes #3138
2016-02-01 13:28:49 -08:00
Billie H. Cleek
bf3c294326
listen on system chosen port
...
Change the default for LocalPort to "0", so that the listener will be a
system chosen port.
2016-01-28 22:22:12 -08:00
Chris Bednarski
15f99a4aee
Merge branch 'ansible-provisioner' of https://github.com/bhcleek/packer into f-ansible
2016-01-28 15:16:54 -08:00
Chris Bednarski
87532b1b00
Merge branch 'chef-provisioner-windows' of https://github.com/sneal/packer into f-chef-provisioner-windows
2016-01-28 14:55:17 -08:00
Matt Black
33071150c1
Salt provisioner: option to set logging level on Salt highstate run
2016-01-26 13:09:15 +00:00
Matt Black
9ccf298be9
Salt provisioner: option to ignore salt highstate failures fixes #2486
2016-01-26 13:09:15 +00:00
Matt Black
5cd15b52c5
Salt provisioner: dynamic command line args passed onto salt-call fixes #2652
2016-01-26 13:09:15 +00:00
Matt Black
7cb802f8a0
Salt provisioner: improved inputs validation
2016-01-26 13:09:15 +00:00
Chris Bednarski
3eabc6253d
Merge pull request #2653 from evertrue/evertrue/eherot/add_data_bag_secret_to_chef_client
...
Chef-client provisioner: Add encrypted data bag secret path (Fixes #1945 )
2016-01-13 13:59:48 -08:00
Billie Cleek
77c48678d6
eliminate possible race conditions
...
Eliminate race-y use of the packer.Ui interface by wrapping it in a
concurrency-safe implementation.
2015-12-19 15:15:19 -08:00
Billie Cleek
d73e75a7cf
fix panic when connection is closed before packer send Shutdown
2015-12-19 12:15:04 -08:00
David Zanetti
2668747c71
Rename noclean shell option to skip_clean, per pull feedback
2015-11-19 16:02:45 +13:00
David Zanetti
3d23655f2f
Add "noclean" boolean to shell provisioner. This stops the provisioner from
...
attempting to remove helper scripts it creates. As noted on #2803 this can
be useful when deleting the build user from an AMI or other template.
2015-11-16 16:37:09 +13:00
Trevor Suarez
f006a83c95
Fixing the bug found in the tests
2015-11-03 18:19:03 -05:00
Trevor Suarez
6ca02286d4
Test for when the config parameter isn't passed
2015-11-03 18:18:24 -05:00
Trevor Suarez
627a8fe819
Renaming the config parameter from "options"
...
to "extra_arguments"
2015-11-03 17:55:03 -05:00
Trevor Suarez
4ea7e3473d
Testing the new options argument during the actual
...
call to `Provision()`
2015-11-03 15:01:16 -05:00
Trevor Suarez
84e1b387c4
New test for preparing the new config parameter
2015-11-03 14:36:04 -05:00
Trevor Suarez
ebed9e53fb
Adding new "Options" configuration parameter for
...
the puppet-masterless provisioner, to allow for specifying additional
options to pass to the execute command
2015-11-03 12:30:55 -05:00
Billie Cleek
2dc9e0af3f
fix `go vet` identified issues
2015-10-31 10:39:33 -07:00
Billie H. Cleek
5366393f9f
fix tests
2015-10-31 10:39:33 -07:00
Billie H. Cleek
cc8ca3098e
add ansible provisioner
2015-10-31 10:39:33 -07:00
Mark Peek
43cb854b3e
Merge pull request #2568 from pecigonzalo/f-winrm-reboot
...
Add reboot checks before moving out of the reboot sequence for WinRM
2015-10-26 16:57:13 -07:00
Mark Peek
c48548b3bb
go fmt
2015-10-18 11:13:09 -07:00
Mark Peek
1aad5cf6d5
provisioner/windows-restart: remove race in test
2015-10-12 13:20:18 -07:00
Mark Peek
d87b68efe8
Syncronize cancellation in windows-restart tests
...
Two windows-restart tests would timeout and fail due to the cancellation
thread firing before the cancel object was created. This change syncronizes
the start of the threads to prevent this from occurring.
2015-10-10 14:32:39 -07:00
Shawn Neal
357e494ee3
Fix failing Windows guest command tests
2015-10-01 10:04:59 -07:00
Shawn Neal
8014dac742
Add Windows support to Chef provisioners
...
- Add guest os type to change the default Chef-Solo and Chef-Client provisioner behavior. Paths, commands etc.
- Change Chef installation download location to chef.io domain
- Add encrypted data bag secret configuration
2015-10-01 10:04:59 -07:00
Shawn Neal
affebcda86
Windows Powershell commands need to specify shell
...
The WinRM communicator defaults to the regular Windows cmd shell so we need to tell Packer to use Powershell when running these guest commands.
2015-10-01 10:02:11 -07:00
Shawn Neal
67f6d6cdb5
Adds provisioner guest commands abstraction
...
Provisioners often needs to perform command line operations on guests that may have different syntax and shells. The GuestCommands type abstracts these away so provisioners can avoid littering branching logic all over the place.
2015-10-01 10:02:10 -07:00
Gonzalo Peci
f01f62dc88
Add specific exit codes listed on https://msdn.microsoft.com/en-us/library/windows/desktop/ms681383(v=vs.85).aspx
2015-08-28 09:55:14 +12:00
Gonzalo Peci
8bd3e62853
Because the new functionality makes the ```waitForRestart()``` function run commands it modifies the value of ```comm.StartCmd.Command``` that is being checked, we need to implement the same workaround that is being used for the ```waitForCommunicator()``` function. This should make the test work again and retain functionality.
2015-08-28 09:54:59 +12:00
Gonzalo Peci
08359e409a
Revert the shutdown command with new parameters as this will return proper exit codes. This will work in the same way as restart-computer -force when using ```shutdown /r /f /t 0```.
...
Note:The WinRM library does not return the exit code currently, this will be implemented on https://github.com/masterzen/winrm/pull/26
2015-08-28 09:54:39 +12:00
Gonzalo Peci
70083fc869
Add reboot checks before moving out of the reboot.
2015-08-28 09:54:24 +12:00
Tim Smith
72e8119233
Download chef from chef.io
2015-08-25 21:53:50 -07:00
Eric Herot
f625c985af
Chef-client provisioner: Add encrypted data bag secret support ( Fixes #1945 )
2015-08-21 16:05:47 -07:00