Megan Marsh
e04eaa89e6
move steps and step configs from packer/common to packer/common/commonsteps
2020-11-13 11:15:04 -08:00
Megan Marsh
6402362018
create packer-plugin-sdk directory and begin moving the relevant folders into it.
2020-11-13 10:47:36 -08:00
Megan Marsh
8ecd16db81
regenerate code
2020-11-10 08:16:59 -08:00
Megan Marsh
2bf912bddf
Merge pull request #10203 from aleksandrserbin/feature/launch-template-tags
...
amazon-ebs: add tags to launch template
2020-11-09 09:14:02 -08:00
Megan Marsh
efc117fb55
Merge pull request #10218 from hashicorp/clean_plugin_sdk
...
Clean plugin sdk
2020-11-06 12:35:23 -08:00
Megan Marsh
2d90ffe7a4
move GeneratedData struct and PlaceholderMsg to same package under common
2020-11-06 10:45:38 -08:00
Megan Marsh
f13f3d4d5f
fix single tag interpolation to allow golang template engine usage
2020-11-05 16:27:53 -08:00
Aleksandr Serbin
8dab31b548
amazon: use spot tags for launch template tags
...
- use `spot_tags` instead of `run_tags` for launch template
- move region to `StepRunSpotInstance` from state
2020-11-03 22:16:00 +01:00
Aleksandr Serbin
d561b404d6
amazon-ebs: add tags to launch template
2020-11-01 16:25:43 +01:00
Megan Marsh
845a10867e
Merge pull request #10003 from hashicorp/ssm_session_retry
...
Add retry mechanism to retry SSM session creation
2020-10-29 16:02:54 -07:00
Wilken Rivera
01d5e5ca76
test/amazon/ebs: Add acceptance test for Session Manager Interface connectivity
...
Test Results
```
...
2020/10/29 09:35:39 ui: test: Starting session with SessionId: wilken-00bcfae4d314f54e7
2020/10/29 09:35:40 [DEBUG] TCP connection to SSH ip/port failed: dial tcp [::1]:8047: connect: connection refused
2020/10/29 09:35:40 ui: test: Port 8047 opened for sessionId wilken-00bcfae4d314f54e7.
2020/10/29 09:35:45 [INFO] Attempting SSH connection to localhost:8047...
2020/10/29 09:35:45 [DEBUG] reconnecting to TCP connection for SSH
2020/10/29 09:35:45 ui: test: Connection accepted for session wilken-00bcfae4d314f54e7.
2020/10/29 09:35:45 [DEBUG] handshaking with SSH
2020/10/29 09:35:45 [DEBUG] SSH handshake err: ssh: handshake failed: ssh: invalid packet length, packet too large
2020/10/29 09:35:52 [INFO] Attempting SSH connection to localhost:8047...
2020/10/29 09:35:52 [DEBUG] reconnecting to TCP connection for SSH
2020/10/29 09:35:52 [DEBUG] handshaking with SSH
2020/10/29 09:35:52 [DEBUG] handshake complete!
2020/10/29 09:35:52 [DEBUG] Opening new ssh session
2020/10/29 09:35:53 [INFO] agent forwarding enabled
2020/10/29 09:35:53 ui: ==> test: Connected to SSH!
2020/10/29 09:35:53 Running the provision hook
2020/10/29 09:35:53 ui: ==> test: Stopping the source instance...
2020/10/29 09:35:53 ui: test: Stopping instance
2020/10/29 09:35:54 ui: ==> test: Waiting for the instance to stop...
2020/10/29 09:36:25 ui: ==> test: Creating AMI packer-ssm-test-1603978447 from instance i-0853cb6186a3406d5
2020/10/29 09:36:25 ui: test: AMI: ami-0868a41bbb2df77b3
2020/10/29 09:36:25 ui: ==> test: Waiting for AMI to become ready...
2020/10/29 09:37:59 ui: ==> test: Terminating the source AWS instance...
2020/10/29 09:37:59 ui error: ==> test: Bad exit status: -1
2020/10/29 09:38:15 ui: ==> test: Cleaning up any extra volumes...
2020/10/29 09:38:15 ui: ==> test: No volumes to clean up, skipping
2020/10/29 09:38:15 ui: ==> test: Deleting temporary security group...
2020/10/29 09:38:16 ui: ==> test: Deleting temporary keypair...
2020/10/29 09:38:16 Deregistering image ID (ami-0868a41bbb2df77b3) from region (us-east-1)
2020/10/29 09:38:17 Deregistered AMI id: ami-0868a41bbb2df77b3
2020/10/29 09:38:17 Deleted snapshot: snap-09602f15994bc9f51
--- PASS: TestBuilderAcc_SessionManagerInterface (249.87s)
PASS
```
2020-10-29 09:39:19 -04:00
Adrien Delorme
b058de072a
move packer/builder/amazon/common.IsAWSErr to builder/amazon/common/awserrors.Matches
...
to avoid cyclic dependency issues
2020-10-29 12:02:41 +01:00
Adrien Delorme
f5e037e8b4
Merge remote-tracking branch 'origin/master' into azr_selectable_temp_keygen_type_gcp
2020-10-26 15:47:29 +01:00
Megan Marsh
c0ce8a9414
rework fixer deprecation code so we know what plugins they relate to
2020-10-21 15:28:59 -07:00
Adrien Delorme
522d122858
regen all code
2020-10-21 12:04:10 +02:00
Adrien Delorme
f51b231c17
Merge remote-tracking branch 'origin/master' into azr_selectable_temp_keygen_type_gcp
2020-10-20 16:39:01 +02:00
Evan Pipho
6967e02103
Add support for source instance tenancy to amazon builders
2020-10-16 21:43:22 +00:00
Adrien Delorme
54032d6c11
gen code and docs
2020-10-15 16:51:23 +02:00
Megan Marsh
4c0ac6917e
switch to using aws base config, which means we're using code tested and maitnained by the terraform crowd.
2020-09-29 14:26:38 -07:00
Sylvia Moss
96e3def294
Add pause_before_ssm config to pause before establishing the Session Manager session ( #9988 )
2020-09-25 10:19:19 +02:00
Megan Marsh
429d431365
Implement assume_role for Packer. This functionality is copied shamelessly
...
from the Terraform AWS provider
2020-09-23 13:18:26 -07:00
catsby
7a7d3ff350
Remove comments about sharing with catsby
2020-09-03 09:14:40 -05:00
Rae Krantz
ab23e839c8
update sharing test to req aws account id
2020-09-02 11:44:38 -04:00
sylviamoss
788dc32598
add aws_polling config option to override env variables
2020-08-17 17:15:32 +02:00
Megan Marsh
54469c4728
Add all of the custom AWS template engines to GeneratedData for use b… ( #9751 )
2020-08-12 10:43:15 +02:00
Megan Marsh
8f362656ee
Update builder/amazon/ebs/step_create_ami.go
...
Co-authored-by: Wilken Rivera <dev@wilkenrivera.com>
2020-08-07 08:02:57 -07:00
Megan Marsh
484dbfe6ad
improve error handling when waiting for image so that the resourcenotready error is bubbled up more clearly without verbose logging turned on
2020-08-06 14:58:05 -07:00
Megan Marsh
a687d6fe12
ci/tech-debt: Fix vmware acceptance tests ( #9636 )
...
* add kex algorithm option to ssh config
* regenerate code
* This commit fixes old vmware acceptance tests that have not been run in some time. It does this in two parts:
1) It modifies the minimal vmware build configuration to use a custom kex algorithm, which enables the ssh connection to succeed.
2) It modifies logic in reading and defaulting hardware config values, which was crashing.
3) It adds a new acceptance test with a preseed file to test loading from an http directory.
2020-07-23 09:40:57 +02:00
Megan Marsh
1f3b3f8fd9
change retry func to a 15 min timeout
2020-07-21 15:55:39 -07:00
Megan Marsh
a56942d3c7
change isAwsErr to an exported func so I can use it in other aws modules.
2020-07-21 15:30:45 -07:00
Megan Marsh
036ea238bf
wrap CreateImage call in a retry to account for eventual consistencey issues with image state
2020-07-21 15:30:45 -07:00
Roger Hu
28f8241a05
update generated files
2020-07-10 16:58:06 -07:00
Moss
8ea64c5b35
undocument ssh_keypair_name and ssh_agent_auth
2020-07-02 14:55:58 +02:00
Moss
41edd09d3c
undocument temporary_key_pair_name and ssh_private_key_file
2020-07-01 16:33:18 +02:00
Adrien Delorme
b2320ca911
HCL2: add singular run_volume_tag block to ebs & ebssurrogate builders ( #9457 )
...
close #9280
related to #8889
2020-06-23 10:49:50 +02:00
Megan Marsh
4f77bb0c4a
add new ssh_ciphers option
2020-06-17 16:48:23 -07:00
Megan Marsh
4178625afb
re-add winrm_no_proxy option. Winrm code needs to be modified in order to read no_proxy env var when client is created rather than when net/http library is instantiated.
2020-06-16 10:27:30 -07:00
Adrien Delorme
40947c2bf6
HCL2: generate hcl tags with go-cty tags too ( #9306 )
...
This will allow to generate the config files:
```go
package main
import (
"fmt"
"github.com/hashicorp/hcl/v2/gohcl"
"github.com/hashicorp/hcl/v2/hclwrite"
"github.com/hashicorp/packer/builder/alicloud/ecs"
)
func main() {
name := "name"
app := ecs.FlatConfig{
AlicloudImageName: &name,
ECSSystemDiskMapping: &ecs.FlatAlicloudDiskDevice{
DiskName: &name,
},
}
f := hclwrite.NewEmptyFile()
block := gohcl.EncodeAsBlock(&app, `source "something" "something"`)
f.Body().AppendBlock(block)
fmt.Printf("%s", f.Bytes())
}
```
Will output:
```
source "something" "something" {
packer_user_variables = null
packer_sensitive_variables = null
image_name = "name"
image_share_account = null
image_unshare_account = null
image_copy_regions = null
image_copy_names = null
tags = null
tag = null
system_disk_mapping = { disk_category = null, disk_delete_with_instance = null, disk_descri
ption = null, disk_device = null, disk_encrypted = null, disk_name = "name", disk_size = null, disk_
snapshot_id = null }
image_disk_mappings = null
ssh_remote_tunnels = null
ssh_local_tunnels = null
ssh_public_key = null
ssh_private_key = null
}
```
This is a good first step for #9015 and #9282
fix #9304
2020-05-28 11:19:00 +02:00
Wilken Rivera
89fb7bb080
Apply suggestions from code review
...
Co-authored-by: Megan Marsh <megan@hashicorp.com>
2020-05-08 09:36:43 -04:00
Wilken Rivera
7cea7466ba
buider/amazon: Add `session_manager_port` option for setting a custom local port
2020-05-08 09:32:54 -04:00
Wilken Rivera
3f6b28b70c
Add SSMTunnel step to other amazon builders, minus chroot
2020-05-08 09:32:48 -04:00
Wilken Rivera
e515aefee3
Add validation checks for session_manager
...
* Session manager connectivity only supported via SSH
* Session manager requires the use of an iam instance profile with system manager permissions
2020-05-08 09:32:48 -04:00
Wilken Rivera
c1d2477d18
builder/amzon: Update port configuration for WinRM
...
Connectivity for WinRM works for the initial connection, but fails to upload any provisioning scripts - need to dive in deeper.
For now connectivity over SSH works as expected.
2020-05-08 09:32:48 -04:00
Wilken Rivera
520061dee6
builder/amazon: Update Session Manger connectivity
...
* Update security group creation step skip ingress rules if using session manager
* Update create ssm tunnel step to dynamically set a session port
* Add SSHPort function to common to return session-manager tunnel port
* Update SSHHost to return proper host for session-manager
2020-05-08 09:32:48 -04:00
Wilken Rivera
3dd46eb5f4
Add PoC of connectivity using session-manager-plugin
...
* Add a bunch of hard coded values for testing on port 8081; ssh configs
are set to localhost and 8081
* Add a base drive for communicating with the session manager plugin
* Update step for creating tunnel to actually create SSM session tunnel via driver
2020-05-08 09:32:48 -04:00
Megan Marsh
f0d2680426
remove spot_price_auto_product from docs ( #9173 )
2020-05-05 20:48:27 -04:00
Megan Marsh
7e0cfd8b77
add undocumented tag to struct-markdown generator so that we can leave internal-use-only fields out of docs
2020-05-01 10:31:38 -07:00
Adrien Delorme
73242e8de4
make sure keyvalue and namevalue filters are using the same naming as the service being used
2020-04-16 17:22:13 +02:00
Adrien Delorme
840e67f775
HCL2: when we see a map generate an attribute spec instead of a block spec ( #9035 )
...
* mapstructure-to-hcl2: when we see a map generate an attribute spec and not a block spec
this will alow to do
tags = {
key = "value"
}
instead of
tags {
key = "value"
}
This will also enable using variables directly for those tags
* generate code
* update tests
2020-04-14 16:05:13 +02:00
Jeff Escalante
9165be87da
packer.io prefix removal, html extension remove for in-code errors
2020-04-07 17:53:22 -04:00