Matt Dainty
11be4ffc4b
Attempt at generalising elevated support
...
Refactor puppet-server provisioner to use it.
2018-12-06 18:00:22 +00:00
Megan Marsh
e69391f28b
save users some bash scripting by exposing IP and port separately as well as together
2018-12-06 09:29:07 -08:00
Matt Dainty
a7b407eab6
Naive support for elevated support for puppet-server provisioner
...
This commit just lifts the various bits out of the powershell
provisioner.
2018-12-06 15:09:57 +00:00
Matt Dainty
5fed453047
Ignore an already-scheduled reboot
...
If the previous provisioner already scheduled a reboot don't error we
can't schedule another one.
2018-12-05 15:43:22 +00:00
Megan Marsh
fa6eb3fdea
reverts 406bf9c4aad7c925c3f5a837fe7f9c71169af098; this was incorrect interpretation of the intent of the inventoryDirectory template option
2018-12-03 16:08:47 -08:00
Megan Marsh
8a7ec456f1
use error groups so we can return errors
2018-11-30 10:46:40 -08:00
Megan Marsh
e6477d13fb
fix empty return
2018-11-29 15:22:26 -08:00
Megan Marsh
a93721c54d
add disable option to breakpoint provisioner
2018-11-29 15:09:14 -08:00
Megan Marsh
ba25e68fe0
add a new breakpoint provisioner
2018-11-29 14:32:52 -08:00
Matt Dainty
412119c27e
Fix powershell provisioner tests
2018-11-09 14:26:21 +00:00
Matt Dainty
3b519acebc
Allow Powershell provisioner to use service accounts
...
Fixes #6104
2018-11-08 11:48:27 +00:00
Adrien Delorme
56fd98552e
removed space
2018-10-24 15:49:49 +02:00
Mark Meyer
31afd1c2f8
Add PauseAfter option to shell provisioner
...
Closes #6540
2018-10-24 14:04:08 +02:00
Adrien Delorme
7c63c322c7
make provisioner/ansible/provisioner_test.go invisible to windows
2018-10-16 18:40:07 +02:00
Megan Marsh
1d1729a5ff
fix powershell tests to use new command
2018-10-12 09:54:27 -07:00
Megan Marsh
a81d18cdab
explicitly use set-variable to work around a bug some users saw where the command invocation would vail
2018-10-12 09:15:12 -07:00
Poddo
72391f8f4d
Update provisioner.go
...
Remove extra break statement that made it's way into the "reboot pending" loop when some logic was rearranged in 9fa47f5dad (diff-8bb0a16231863cd1487dd9a3d3792565)
2018-10-03 00:54:31 -05:00
Megan Marsh
7597f609b1
update winrmcp vendor and update error message in file provisioner to aid user who messes up file path name. update file provisioner docs
2018-09-21 14:51:32 -07:00
Megan Marsh
3f8407d95f
Revert "Merge pull request #6700 from hashicorp/multi_progressbar"
...
This reverts commit 5470c08345
, reversing
changes made to c427486bca
.
2018-09-20 13:14:17 -07:00
Adrien Delorme
dfeca9f0df
split progressbars per object
2018-09-12 16:21:58 -07:00
Megan Marsh
a0edaf6c46
Going to revert this change for now, becuase of potential issues that arise from calling Prepare() twice
...
Revert "use statebag instead of SetSharedState for winRM password"
This reverts commit b35acbd879
.
2018-09-10 16:48:42 -07:00
Adrien Delorme
bb59a70e8f
progressbar: use int64 instead of uint64
...
* it's what's used for file sizes and used lib
2018-09-06 16:49:15 +02:00
Adrien Delorme
5b66069da0
tests: remove Ui stubs to use packer.NoopUi to deduplicate code
2018-09-06 15:53:59 +02:00
Adrien Delorme
7efe3cac3d
todos
2018-09-06 15:53:59 +02:00
Adrien Delorme
9b07d7670e
use no ops for ansible ui & MachineReadableUi
2018-09-06 15:53:59 +02:00
Adrien Delorme
fd7cb47adc
use proxy reader for download progress & stop storing total/current in downloaders
2018-09-06 15:53:59 +02:00
Adrien Delorme
ddd96c513b
first draft at self refreshing loading bar centralized/controlled by Ui
2018-09-06 15:53:59 +02:00
Adrien Delorme
61480f41dc
fix some go vet issues in tests ( composite literal uses unkeyed fields )
2018-08-31 11:54:12 +02:00
Megan Marsh
266a48a73a
minor fixes for shell provisioner docs and logging
2018-08-30 14:36:14 -07:00
Megan Marsh
ab13c73277
make varfile name unique and make sure to remove it from guest system if cleanup is true.
2018-08-30 11:02:56 -07:00
Megan Marsh
2c9a205f11
update shell provisioner tests
2018-08-29 11:10:49 -07:00
Megan Marsh
cce13e3877
shell provisioner: add option to source env vars from a file
2018-08-29 11:10:49 -07:00
Megan Marsh
b35acbd879
use statebag instead of SetSharedState for winRM password
2018-08-24 13:51:16 -07:00
Megan Marsh
c51cd751d1
go back to using StartWithUI to prevent weird hangs during windows reboot
2018-08-23 16:15:50 -07:00
Megan Marsh
1f79b430ee
Merge pull request #6610 from hashicorp/filter_logs
...
Filter logs
2018-08-23 13:30:21 -07:00
Megan Marsh
c1b50d365b
Merge pull request #5851 from arizvisa/multi-proto-progressbar
...
Add progress-bar to common/step_download.go
2018-08-21 15:08:22 -07:00
Megan Marsh
9fa47f5dad
make windows restart provisioner work with ssh communicator
2018-08-21 11:45:18 -07:00
Ali Rizvi-Santiago
cf9bbe3ecf
Incorporated the hack demonstrated by @SwampDragons in order to deal with packer.rpc.Ui not exporting any information about what it's doing to anybody.
2018-08-20 21:55:18 -05:00
Ali Rizvi-Santiago
5726927cba
Moved the progress bar out of packer.Ui and unlinked it out of all the packer.Ui implementations. Split up the terminal-related functions into a separate terminal.go and calculate the progress bar width by traversing through packer.Ui to avoid the issue with github.com/ugorji/go/codec serializing private members (or unsafe pointers) of structs. Shuffled some arguments around in getConsoleScreenBufferInfo in common/terminal_windows.go so that the interface forces the user to correctly declare a _CONSOLE_SCREEN_BUFFER_INFO type.
2018-08-20 21:55:18 -05:00
Ali Rizvi-Santiago
0f10032b3d
Moved the progress bar from common to the packer.UI interface and refactored it so that the terminal width is calculated based on each interface which returns a custom progressbar specific to its ui.
2018-08-20 21:55:18 -05:00
Ali Rizvi-Santiago
fd2fef8738
Added support for the progress bar to automatically determine its width using the minimum length from a packer.UI and the terminal dimensions via kernel32.GetConsoleScreenBufferInfo or an ioctl (TIOCGWINSZ) to "/dev/tty".
2018-08-20 21:55:18 -05:00
Megan Marsh
ff6a039d5b
replace scrubconfig with packer.LogSecretFilter.Set
...
filter winrm password from logs
Add new root-level packer template option, sensitive-variables, to tell us what user variables to mark sensitive.
2018-08-20 15:35:55 -07:00
Megan Marsh
eb685b7140
remove duplicate code from chef provisioner
2018-08-07 10:01:06 -07:00
Megan Marsh
a5a6b1ab58
Merge pull request #6501 from Wenzel/expose_ansible_packer_http_addr
...
Expose ansible packer_http_addr extra var
2018-07-18 17:18:46 -07:00
Megan Marsh
e146973d08
change implementation to set winrm password in way that matches powershell and shell-local implementations; sanitize logs
2018-07-17 16:39:50 -07:00
Mathieu Tarral
3450b6fd6f
ansible: expose packer_http_addr extra var
2018-07-17 19:58:07 +03:00
Levi
6646d42490
updated function calls to include buildname and changed variable names
2018-07-14 14:39:38 -04:00
Levi
68ec630fde
added function to retreive winrm password from commonhelper
2018-07-14 11:25:04 -04:00
Levi
636cec8f2b
added commonhelper import
2018-07-14 11:25:01 -04:00
Levi
37fd50995f
added parameter for setting packer password as env variable
2018-07-14 11:25:00 -04:00
DanHam
485d565e32
Ensure comments are easily readable in a standard terminal
2018-06-15 00:49:15 +01:00
DanHam
e0bcba4913
Make the upload of env vars retryable in case of restarts
2018-06-15 00:09:50 +01:00
localghost
e1a1bb522d
Merge remote-tracking branch 'origin/master' into ansible_local_playbook_files_update
2018-05-26 22:00:50 +02:00
localghost
263a3c6910
Include some of the refactoring reverted by previous revert commit.
2018-05-26 21:59:43 +02:00
localghost
46a1c5d945
Revert "Unify handling PlaybookFile and PlaybookFiles."
...
This reverts commit 81db142c8a
.
2018-05-26 21:58:08 +02:00
M. Marsh
62e1323577
Merge pull request #5956 from hashicorp/dedupe_shell_local
...
Deduplicate the code for the shell-local post-processor and shell-local provisioner
2018-05-23 15:54:27 -07:00
localghost
6c7aa724eb
Fix tests after merging with master.
2018-05-16 22:43:30 +02:00
localghost
c33ca8ce64
Merge remote-tracking branch 'origin/master' into ansible_local_playbook_files_update
2018-05-16 22:14:12 +02:00
localghost
11f2b1ec24
Merge remote-tracking branch 'origin/master' into ansible_local_playbook_files_update
2018-05-16 21:54:39 +02:00
localghost
81db142c8a
Unify handling PlaybookFile and PlaybookFiles.
2018-05-16 21:54:19 +02:00
M. Marsh
abb70bfa80
Merge pull request #6215 from tb3088/delay-extraArgs-4462_clean
...
Delay evaluation of ExtraArguments and standardize puppet-server and puppet-masterless
2018-05-08 15:03:55 -07:00
Matthew Patton
d22fb6d60b
reformat via gofmt
2018-05-08 12:44:15 -04:00
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