Commit Graph

131 Commits

Author SHA1 Message Date
Ali Rizvi-Santiago 040a33567e Trying again one more time to prevent import cycles.. Moved common.ExpandUser into packer.ExpandUser.. 2018-12-04 16:54:47 -06:00
Ali Rizvi-Santiago 79b68fb89c Replaced the previous incorrect logic with an re-implementation of common.ExpandUser. 2018-12-04 16:53:33 -06:00
Ali Rizvi-Santiago e04986659a Changed the logic for when to actually prefix a path with a u.HomeDir so that it's only done when a non-absolute path is specified. 2018-12-04 16:53:33 -06:00
Ali Rizvi-Santiago 1a3c3f2ffc Replaced all instances of mitchellh/go-homedir with an implementation based on os/user. 2018-12-04 16:53:33 -06:00
Mikhail Ushanov ee0bff6451 communicator/ssh: proper error message
Signed-off-by: Mikhail Ushanov <gm.mephisto@gmail.com>
2018-11-08 14:25:50 +03:00
Mikhail Ushanov 45925657fc communicator/ssh: make ssh keys payload internal
Signed-off-by: Mikhail Ushanov <gm.mephisto@gmail.com>
2018-11-08 14:25:50 +03:00
Mikhail Ushanov 1c503b86d9 communicator/ssh: expand user path for bastion private key
Signed-off-by: Mikhail Ushanov <gm.mephisto@gmail.com>
2018-11-08 14:25:50 +03:00
Mikhail Ushanov 6d2a0ab0df communicator/ssh: expand user path for private key
Signed-off-by: Mikhail Ushanov <gm.mephisto@gmail.com>
2018-11-08 14:25:50 +03:00
Mikhail Ushanov da0bad8441 communicator/ssh: add private key file read helper
Signed-off-by: Mikhail Ushanov <gm.mephisto@gmail.com>
2018-11-08 14:25:50 +03:00
Megan Marsh 38cc525ec7 new option allowing user to clean up the ephemeral ssh key from the authorized_keys file 2018-09-14 11:06:38 -07:00
Adrien Delorme b0c09087a2 move SSHInterface/SSHIPVersion fields to communitator.Config struct 2018-08-29 14:51:28 +02:00
Adrien Delorme 1d219cecaf add SSHTemporaryKeyPairName to communicator.Config 2018-08-29 14:40:33 +02:00
Adrien Delorme 9a9b82715b config.Comm.SSHKeyPair => SSHKeyPairName 2018-08-29 14:40:33 +02:00
Adrien Delorme 77a57f0354 communicator.Config: `mapstructure:"ssh_key_pair"` => ssh_keypair_name 2018-08-29 14:40:33 +02:00
Adrien Delorme 69dfe2565b SSHBastionPrivateKey => SSHBastionPrivateKeyFile 2018-08-29 14:40:33 +02:00
Adrien Delorme 5369c15459 helper: communicator.SSHFileSigner => ssh.FileSigner
* had to to avoid circular dependency
* this commit fixes #6631 ( esxi cannot be reached by ssh )
2018-08-29 14:40:33 +02:00
Adrien Delorme b83c72fd54 more private keys in config 2018-08-29 14:40:32 +02:00
Adrien Delorme 663c8134ef GCP: put ssh public/private key in config 2018-08-29 14:40:32 +02:00
Adrien Delorme 51d2aac9f6 SSHPrivateKey => SSHPrivateKeyFile 2018-08-29 14:40:32 +02:00
Matthew Hooker e41e99954d
go 1.11 format rules 2018-08-24 15:56:44 -07:00
Adrien Delorme fa44a4546f use ssh.ParsePrivateKey where we can 2018-08-22 18:23:09 +02:00
Adrien Delorme bacfb02182 doc better SSHConfigFunc 2018-08-22 18:16:25 +02:00
Adrien Delorme ab7f998862 SSHConfigFunc: use struct fields instead of copying them locally 2018-08-22 17:08:46 +02:00
Adrien Delorme 0ff7c1da87 SSHConfigFunc: append the ssh auth ways 2018-08-22 17:03:25 +02:00
Adrien Delorme 41f6e0334d refactor all copy pasted sshConfig with into communicator.Config.SSHConfigFunc
* still need to append the auth methods into an array for gracefullness
2018-08-22 17:02:23 +02:00
Ali Rizvi-Santiago a3cec4f274 Emit both the host and the communicator to the user during StepConnect. 2018-07-29 02:18:26 -05:00
SwampDragons 5af42ee9e2
Revert "Add `winrm_no_proxy` option." 2018-02-08 15:10:53 -08:00
Matthew Hooker 22666153f9
Add `winrm_no_proxy` option.
Setting this adds the remote host:ip to the `NO_PROXY` environment
variable.
2018-02-07 20:58:08 -08:00
Matthew Hooker 63f1673909
ssh deadlines 2018-01-31 12:35:25 -08:00
Matthew Hooker cab52872f4
add session level keep-alives for ssh communicator 2018-01-30 22:00:37 -08:00
Matthew Hooker 8cd403425e
test fixes WIP 2018-01-24 17:09:17 -08:00
Matthew Hooker 5d48d658b4
Wire context through misc steps
Some steps actually need to pass the context around, so let's create
a ctx variable and pass it.
2018-01-24 17:09:17 -08:00
Matthew Hooker 7a189a83a1
fix imports
`find . -type f -name '*.go' -not -path "./vendor/*" -exec goimports -w {} \;`
2018-01-24 17:09:17 -08:00
Matthew Hooker a831d522be
change run signatures
Run now takes a context as well as a statebag. We'll assign the context
to the blank identifier to prevent namespace collisions. We'll let the
step authors opt-in to using the context.

`find . -iname "step_*.go" -exec gsed -i'' 's/func \(.*\)Run(/func \1Run(_ context.Context, /' {} \;`
2018-01-24 17:09:17 -08:00
Matthew Hooker 366dc3da0a
move multistep imports to helper.
gomvpkg -from "github.com/mitchellh/multistep" -to "github.com/hashicorp/packer/helper/multistep"
2018-01-24 17:09:15 -08:00
Pawel Kilar 17beb1d7ad Check if both SSH proxy and basiton are configured 2017-10-14 21:38:44 +01:00
Paul Kilar d9b404fa00 SOCKS5 proxy support 2017-10-10 15:04:15 +01:00
Megan Marsh 959db1ac16 add echo test to winrm connection. 2017-09-01 15:26:41 -07:00
Rickard von Essen 4f6010aa26
ssh: Renamed ssh_disable_agent to ssh_disable_agent_forwarding
Closes: #4941
2017-06-19 16:26:18 +02:00
Lee Spottiswood 8473a1148c Add 'winrm_use_ntlm' configuration directive for NTLM authentication support 2017-06-07 12:08:12 +01:00
Rickard von Essen d4ecf4acb3
Add InsecureIgnoreHostKey to bastion connection 2017-05-28 20:35:01 +02:00
Rickard von Essen 2164700162
comm/ssh: Add support for using SSH Agent auth towards a bastion host.
Adds `ssh_bastion_agent_auth`

Fixes: #4732
2017-05-28 14:05:03 +02:00
Matthew Hooker 81522dced0
move packer to hashicorp 2017-04-04 13:39:01 -07:00
Matthew Hooker aaba5286a6 Revert "Use SSH agent when enabled for bastion step" 2017-02-27 11:30:08 -08:00
David Campbell 6c7e3b70a9
- use xanzy/ssh-agent for windows compatibility 2017-02-26 18:01:45 -08:00
David Campbell b598baa5e3
Use SSH agent when enabled for bastion step 2017-02-26 17:59:42 -08:00
Eike Verdenhalven 7ad77b9e93 integrate new winrm transport interface 2017-01-18 22:11:48 +01:00
Taliesin Sisson 335615408a Run go fmt on files 2016-12-12 22:45:19 +00:00
Taliesin Sisson bd0b1190f6 When redirecting local ports to hyper visor ports we need to configure WinRM ports as well as SSH ports. 2016-12-12 22:44:09 +00:00
Rickard von Essen 96e9a8e6e9 Removed default value for ssh_username 2016-11-17 22:30:34 +01:00
James Nugent 7425fef2c7 builder/amazon: Allow use of local SSH Agent
This commit adds an option to use the local SSH Agent to authenticate
connections to source instances started by the the EBS and Instance
Store builders.

This is of use when the source AMI _already_ has configuration for
authorized SSH keys - for example if one uses an SSH certificate
authority.

A further extension (not implemented in this commit) is to allow SSH
agent use with a pre-defined key pair, in order to allow keys with
passphrases to be used without giving the passphrase to Packer.
2016-10-23 21:43:47 -05:00
Gonzalo Peci 9c9f8cd451 Add winrm functionality to null provisioner (#2525)
* Add new functions to communicator helper to return the user, password, host, based on the communicator used.

This implementation can help then generalize the provisioeners later on.

* Update null builder checks to utilize the new functions and check for ANY hostname or user or password

* Update builder to user any hostname
2016-05-18 17:22:53 -07:00
Christopher Boumenot b57ed27352 Add support for NTLM the WinRM communicator.
WinRM exposes an HTTP transport decorator that can be used for different
authentication schemes.  Windows on Azures requires this if one is to use
the out of the box configuration.
2016-03-10 10:53:38 -08:00
Ilias Bertsimas 918c88ac38 Add 4 testing scenarios for WinRM helper communicator config. 2016-03-02 11:48:20 +00:00
Ilias Bertsimas 85e4865368 Make communicator's WinRM defaults more intuitive when using SSL. 2016-02-29 14:26:28 +00:00
Chris Bednarski 569e6cc464 go fmt 2016-02-08 17:34:06 -08:00
Chris Bednarski 3d9410f176 Merge branch 'sftp' of https://github.com/2opremio/packer into f-sftp 2016-02-02 14:16:19 -08:00
Chris Bednarski 6587926a2b Merge pull request #2848 from epowell/master
Implement a null-object communicator for 'none'
2016-01-21 12:44:36 -08:00
Ben Goodwin 64152e4a64 Implement WinRM-over-HTTPS 2016-01-12 21:28:20 -05:00
Evan Powell bb8ced8cc9 Implement a null-object communicator for 'none'
Fixes #2736
2015-10-20 17:00:48 -05:00
Mark Peek 268ce81dd3 helper/communicator: allow docker custom communicator 2015-10-11 11:48:16 -07:00
Mark Peek 2306f4a4e4 Fixes #2699: catch invalid communicator types 2015-10-11 11:20:50 -07:00
Alfonso Acosta a59c82d7a6 Add sftp file transfer support
Adds a new config option: "ssh_file_transfer_method", which can be set to "scp"
or "sftp" (defaults to "scp")
2015-07-26 23:49:18 +00:00
Gonzalo Peci 88ebc2f7e8 Add s.SSHPort variable as the port WinRM uses to connect. This is needed on any builder where the port used to connect is not the guest winrm port but a nated port on the host.
Similar behavior is used by the SSH communicator.
2015-07-27 09:57:38 +12:00
Mitchell Hashimoto a019575026 helper/communicator: support disabling SSH agent 2015-06-23 14:52:37 -07:00
Mitchell Hashimoto 6cdc17dda4 helper/communicator: default bastion PK to normal PK 2015-06-17 22:33:59 +02:00
Mitchell Hashimoto cbaaf0da52 communicator/ssh: support for bastion SSH 2015-06-17 22:10:42 +02:00
Mitchell Hashimoto dc067b3f10 Merge pull request #2244 from mitchellh/f-docker-ssh
builder/docker: support custom communicators
2015-06-15 09:48:55 -07:00
Mitchell Hashimoto dbbf10472b Merge branch 'b-config-handshake' 2015-06-15 09:44:04 -07:00
Mitchell Hashimoto cab2665119 builder/docker: support custom communicators 2015-06-14 22:09:38 -07:00
Mitchell Hashimoto 8f6ecfd9e3 builder/amazon: various fixes (minor) to get things going 2015-06-13 23:12:59 -07:00
Mitchell Hashimoto 4be10b428a helper/communicator: hook up WinRM 2015-06-13 22:07:17 -07:00
Mitchell Hashimoto 7a39758054 helper/communicator: WinRM stuff 2015-06-13 22:05:48 -07:00
Mitchell Hashimoto 8d0904e296 helper/communicator: configurable handshake attempts [GH-1988] 2015-06-13 19:39:42 -04:00
Mitchell Hashimoto c3cc9e844e helper/communicator: fix vet 2015-06-13 19:24:57 -04:00
Mitchell Hashimoto 115d583cff helper/communicator: make host more generic 2015-06-13 19:23:33 -04:00
Mitchell Hashimoto 68e4734caf builder/null: pass unit tests 2015-06-13 18:55:37 -04:00
Mitchell Hashimoto 5d630bf5fb helper/communicator: validate ssh keys 2015-06-13 18:05:10 -04:00
Mitchell Hashimoto 60081c323a helper/communicator: ssh settings aren't required if type is none 2015-06-13 17:51:27 -04:00
Mitchell Hashimoto 4b4fe2280d helper/communicator: can be disabled 2015-06-13 17:50:45 -04:00
Mitchell Hashimoto 4b3ed5d7e2 helper/communicator 2015-06-13 17:42:38 -04:00