Patrick Ng
e5e5fd1198
Instance Running waiter not aware of global waiter settings
2020-02-05 15:09:09 -08:00
Megan Marsh
d252a24b82
allow user to set winrm_host override like we do ssh_host override
2020-01-30 15:22:22 -08:00
Sylvia Moss
dc31bad539
Sharing info with post-processors via artifact ( #8632 )
2020-01-30 11:27:58 +01:00
nywilken
d2a9e6b32e
Format code with `gofmt -s -w`
2020-01-28 16:52:50 -05:00
Wilken Rivera
111bab86d9
Merge pull request #8622 from datalot/pre-validate-with-filters
...
Allow aws builder pre validation to pass when subnet filters are present
2020-01-22 15:00:44 -05:00
Sylvia Moss
0b7251a4bb
Share .Device and .MountPath between builders, provisioners and post-processors ( #8621 )
2020-01-20 16:29:38 +01:00
Rich Cavanaugh
4fb0de5256
allow validation to pass when subnet filters are present
2020-01-17 11:57:42 -05:00
Sylvia Moss
39c25b2c66
Add retry mechanism to amazon DeleteSnapshot ( #8614 )
2020-01-16 14:38:46 +01:00
Sylvia Moss
0677b02e18
Share SourceImageName with provisioners and manifest post-processor ( #8603 )
2020-01-16 12:04:03 +01:00
Sylvia Moss
0e177915f8
Add retry mechanism to DeregisterImage from awsec2 ( #8598 )
2020-01-15 10:28:14 +01:00
Megan Marsh
b7ee807cf1
Merge pull request #8571 from hashicorp/fix_8565
...
fix ssh interface docs for amazon builders
2020-01-06 14:34:40 -08:00
Megan Marsh
6655f93b59
fix typo and regenerate code
2020-01-06 14:12:29 -08:00
Megan Marsh
76251e5fd2
fix ssh interface docs for amazon builders
2020-01-06 12:01:30 -08:00
Trevor Pounds
47e48ebc24
Add source AMI owner ID/name to build template.
2019-12-30 14:04:49 -05:00
Adrien Delorme
4b7132c87c
Merge remote-tracking branch 'origin/master' into sharing_info
2019-12-17 11:57:09 +01:00
Adrien Delorme
0785c2f6fc
build using HCL2 ( #8423 )
...
This follows #8232 which added the code to generate the code required to parse
HCL files for each packer component.
All old config files of packer will keep on working the same. Packer takes one
argument. When a directory is passed, all files in the folder with a name
ending with “.pkr.hcl” or “.pkr.json” will be parsed using the HCL2 format.
When a file ending with “.pkr.hcl” or “.pkr.json” is passed it will be parsed
using the HCL2 format. For every other case; the old packer style will be used.
## 1. the hcl2template pkg can create a packer.Build from a set of HCL (v2) files
I had to make the packer.coreBuild (which is our one and only packer.Build ) a public struct with public fields
## 2. Components interfaces get a new ConfigSpec Method to read a file from an HCL file.
This is a breaking change for packer plugins.
a packer component can be a: builder/provisioner/post-processor
each component interface now gets a `ConfigSpec() hcldec.ObjectSpec`
which allows packer to tell what is the layout of the hcl2 config meant
to configure that specific component.
This ObjectSpec is sent through the wire (RPC) and a cty.Value is now
sent through the already existing configuration entrypoints:
Provisioner.Prepare(raws ...interface{}) error
Builder.Prepare(raws ...interface{}) ([]string, error)
PostProcessor.Configure(raws ...interface{}) error
close #1768
Example hcl files:
```hcl
// file amazon-ebs-kms-key/run.pkr.hcl
build {
sources = [
"source.amazon-ebs.first",
]
provisioner "shell" {
inline = [
"sleep 5"
]
}
post-processor "shell-local" {
inline = [
"sleep 5"
]
}
}
// amazon-ebs-kms-key/source.pkr.hcl
source "amazon-ebs" "first" {
ami_name = "hcl2-test"
region = "us-east-1"
instance_type = "t2.micro"
kms_key_id = "c729958f-c6ba-44cd-ab39-35ab68ce0a6c"
encrypt_boot = true
source_ami_filter {
filters {
virtualization-type = "hvm"
name = "amzn-ami-hvm-????.??.?.????????-x86_64-gp2"
root-device-type = "ebs"
}
most_recent = true
owners = ["amazon"]
}
launch_block_device_mappings {
device_name = "/dev/xvda"
volume_size = 20
volume_type = "gp2"
delete_on_termination = "true"
}
launch_block_device_mappings {
device_name = "/dev/xvdf"
volume_size = 500
volume_type = "gp2"
delete_on_termination = true
encrypted = true
}
ami_regions = ["eu-central-1"]
run_tags {
Name = "packer-solr-something"
stack-name = "DevOps Tools"
}
communicator = "ssh"
ssh_pty = true
ssh_username = "ec2-user"
associate_public_ip_address = true
}
```
2019-12-17 11:25:56 +01:00
Megan Marsh
84063d2132
implement ID and Type values in the provisioner template info sharing
2019-12-13 11:57:01 -08:00
Megan Marsh
6f418d0e54
get data sharing to a working state with the powershell provisioner
2019-12-11 15:43:38 -08:00
Megan Marsh
601007e3e2
pas data into provisioners well
2019-12-11 15:43:38 -08:00
Oded Priva
5e81c6f44e
added the option to skip IAM instance profile validation ( #8457 )
2019-12-10 09:17:38 +01:00
Moss
28c720bd3a
Organize imports
2019-12-02 10:17:36 +01:00
Moss
250643d54b
Remove 5 sec sleep after adding iam instance profile
2019-12-02 10:13:26 +01:00
Moss
4516978555
Fix request retry mechanism to run aws instance
2019-11-29 18:11:10 +01:00
Jon Allie
c31bbcf4cf
builder/amazon: AmiFilterOptions.GetOwners: avoid taking the address of a loop iterator var ( #8417 )
...
GetOwners() always returned a slice of pointers to the last value. Because slice ranging reuses the same local variable.
2019-11-27 12:28:07 +01:00
Mike Dziedziela
7c3e032fb7
amazon docs: update block-device-configuration docs ( #8395 )
...
So that it works for all builders as some use it with the following field names: launch_block_device_mappings, ami_block_device_mappings or ebs_volumes. the refactored docs weird being to specific.
2019-11-25 11:58:30 +01:00
Megan Marsh
59e6e1d4d5
Merge pull request #8393 from hashicorp/fix_8362
...
Add no_ephemeral template option to nuke ephemeral drives from launch mappings
2019-11-21 16:08:50 -08:00
Megan Marsh
67c3373107
enable no_ephemeral for spot devices, clean up ranging behavior, update docs
2019-11-21 12:46:31 -08:00
Anthony Dong
2e989088e5
amazon-ebssurrogate: allow enabling ena/sr-iov on spot instances
2019-11-21 11:13:32 +01:00
Megan Marsh
0e2bdc8be6
forcibly prevent ephemeral drives from being created in the amazon-ebs builder, when no_ephemeral is set
2019-11-20 13:42:14 -08:00
DanHam
b40e5d90b6
builder/amazon/common/step_pre_validate: Return DescribeVpcs errors
2019-11-19 20:18:53 +00:00
nywilken
afb880c134
test/builder/amazon/common/step_pre_validate: Update DescribeVpcs mock
...
* Update condition to check for a empty VpcId
2019-11-19 14:48:07 -05:00
DanHam
074be9942d
Only validate the user has provided a subnet_id when vpc_id has been set
2019-11-19 14:09:58 +00:00
nywilken
f9f4726eff
builder/amazon/step_pre_validate: Add check for non-default VPCs
...
Subnet information is only really needed when the specified `vpc_id` is
not the default VPC for the region where the builder is being executed.
This change uses the AWS API to determine if the VPC provided is a
non-default VPC and only validates the existence of a `subnet_id` if a
user has provided a non-default `vpc_id`.
Tests after change
```
> make test TEST=./builder/amazon/... TESTARGS='-count=1 -v -run=TestStepPreValidate_checkVpc'
...
=== RUN TestStepPreValidate_checkVpc
=== RUN TestStepPreValidate_checkVpc/DefaultVpc
=== RUN TestStepPreValidate_checkVpc/NonDefaultVpcNoSubnet
=== RUN TestStepPreValidate_checkVpc/NonDefaultVpcWithSubnet
=== RUN TestStepPreValidate_checkVpc/SubnetWithNoVpc
=== RUN TestStepPreValidate_checkVpc/NoVpcInformation
--- PASS: TestStepPreValidate_checkVpc (0.00s)
--- PASS: TestStepPreValidate_checkVpc/DefaultVpc (0.00s)
--- PASS: TestStepPreValidate_checkVpc/NonDefaultVpcNoSubnet (0.00s)
--- PASS: TestStepPreValidate_checkVpc/NonDefaultVpcWithSubnet (0.00s)
--- PASS: TestStepPreValidate_checkVpc/SubnetWithNoVpc (0.00s)
--- PASS: TestStepPreValidate_checkVpc/NoVpcInformation (0.00s)
PASS
...
```
2019-11-18 16:44:09 -05:00
nywilken
488e539f63
builder/amazon: Add helper function for checking against AWSError
...
Replace all straight forward occurrences of `if err, ok := err.(awserr.Error)` with the `isAWSErr` helper function
2019-11-12 15:27:47 -05:00
Megan Marsh
6e2456d028
make error messaging around ResourceNotReady better, update docs with other possible issues ( #8349 )
2019-11-08 11:15:24 +01:00
cove
2898d66812
retry runinstances aws api that wasn't retried and could fail
2019-11-06 14:06:35 -08:00
Megan Marsh
6c704f7046
Revert "fix template imports"
...
This reverts commit 0e70e0e5a4
.
2019-11-04 14:29:00 -08:00
Megan Marsh
517834d528
Revert "Revert "remove clean_ami_name and clean_image_name; complete the deprecation for these functions in favor of clean_resource_name""
...
This reverts commit 44f91c9afc
.
2019-11-04 14:28:40 -08:00
Megan Marsh
fcb65ee422
Merge pull request #8307 from hashicorp/fix_8116
...
delete amazon import post-processor intermediary snapshots
2019-11-01 14:55:22 -07:00
Megan Marsh
e9e4c102e5
delete amazon import post-processor intermediary snapshots
2019-11-01 14:17:44 -07:00
Lars Lehtonen
d072079899
builder/amazon/common: remove dead test type and function mockEC2Conn_Modify_EBS.ModifyInstanceAttribute()
2019-10-31 12:38:32 -07:00
Lars Lehtonen
953be1603b
builder/amazon/common: remove dead test type and function mockEC2ConnSpot.DescribeSpotPriceHistory()
2019-10-31 12:34:11 -07:00
Lars Lehtonen
7a09f9c678
builder/amazon/common: remove dead test function fakeModifyEBSBackedInstanceState()
2019-10-31 12:22:10 -07:00
Lars Lehtonen
0a13b620d6
builder/amazon/common: remove dead test function StepModifyEBSBackedInstance_EnableAMIENASupport()
2019-10-31 12:19:28 -07:00
Lars Lehtonen
c74df8b652
builder/amazon/common: remove dead test function getMockConnSpot()
2019-10-31 12:15:53 -07:00
Lars Lehtonen
e5e2bfa83f
builder/amazon/common: remove nil check on slice, len() on nil slices is zero
2019-10-31 12:09:32 -07:00
Megan Marsh
6191b9c8c6
Merge pull request #8288 from hashicorp/fix_8271
...
add some extra layers of validation to make sure that people don't tr…
2019-10-30 10:41:52 -07:00
Megan Marsh
d084cd1895
Update builder/amazon/common/ami_config.go
2019-10-30 09:41:23 -07:00
Megan Marsh
e9f02e44cb
add test to catch this case
2019-10-29 11:28:56 -07:00
Megan Marsh
7cf47fc463
add some extra layers of validation to make sure that people don't trip over magical encrypt_boot settings later in the build
2019-10-29 11:26:22 -07:00
Megan Marsh
e2283445f2
need to initialize variables scoped to the individual loop, because the address of k,v stay the same and that means we overwrite previous variables when assigning them to the struct directly.
2019-10-28 14:31:13 -07:00
Megan Marsh
7928b5b045
fix transcription error from when we moved to generated docs
2019-10-24 10:19:03 -07:00
Megan Marsh
b9245a402d
add structure to its own struct to make generated code stop complaining
2019-10-23 10:46:42 -07:00
Megan Marsh
5614f307fb
regerate code
...
generate flat FlatPolicyDocument
add PolicyDocument to generate command
2019-10-23 10:46:07 -07:00
Megan Marsh
d15f43e4eb
Merge pull request #8232 from hashicorp/artifact-tree
...
HCL2 configs - part one
2019-10-22 11:54:34 -07:00
Bernard Baltrusaitis
ec1d70dc44
adding required changes
2019-10-22 21:40:18 +11:00
Bernard Baltrusaitis
65d1447b64
adding formatting
2019-10-19 21:33:58 +11:00
Bernard Baltrusaitis
6e2146324f
Merge branch 'master' of github.com:b-b3rn4rd/packer
2019-10-19 20:56:49 +11:00
Bernard Baltrusaitis
8b83cca064
adding temporary instance profile document policy
2019-10-19 20:56:18 +11:00
Adrien Delorme
078ba7c8c3
commit old code generation tool
...
for history
2019-10-15 12:56:42 +02:00
Adrien Delorme
221e72e9c3
builder.amazon.common: remove pointer (*) from []*string and map[*string]*string types
...
because they make hcl2/cty decoding panic
2019-10-15 12:56:41 +02:00
Megan Marsh
0e70e0e5a4
fix template imports
2019-10-14 13:22:06 -07:00
Megan Marsh
44f91c9afc
Revert "remove clean_ami_name and clean_image_name; complete the deprecation for these functions in favor of clean_resource_name"
...
This reverts commit 0026792d2f
.
2019-10-14 13:08:15 -07:00
Adrien Delorme
d4600a7716
fix go imports
2019-10-04 11:19:45 +02:00
Megan Marsh
0026792d2f
remove clean_ami_name and clean_image_name; complete the deprecation for these functions in favor of clean_resource_name
2019-10-03 15:49:01 -07:00
Megan Marsh
e16fb19bfc
don't abort on a single error if another availability zone was able to create the instance
2019-10-02 14:17:00 -07:00
Megan Marsh
eccf0fb51d
update docs
2019-09-27 09:51:18 -07:00
Megan Marsh
e047b97bf7
Merge pull request #8162 from hashicorp/fix_8154
...
make sure amazon builders respect ssh_host option
2019-09-27 09:34:49 -07:00
Megan Marsh
ac6e7a4800
updates tests to validate that ssh_host value supplied in the template overrides all else
2019-09-27 09:19:23 -07:00
Adrien Delorme
941dc394f0
Update step_run_spot_instance.go
2019-09-27 13:04:52 +02:00
Adrien Delorme
d049284120
Update builder/amazon/common/step_run_spot_instance.go
...
remove unused code that might induce errors
2019-09-27 13:00:53 +02:00
Adrien Delorme
07e97e26de
step_run_source_instance.go: make sure we use the right ShouldRetry error
2019-09-27 12:57:55 +02:00
Megan Marsh
c722009159
we only need one describeInstances call, not 3, and it should be wrapped in a retry
2019-09-26 15:47:01 -07:00
Megan Marsh
e47059aaca
put retry around describeinstances call in amazon
2019-09-26 14:49:28 -07:00
Megan Marsh
31bb1e818f
fix tests
2019-09-26 13:02:11 -07:00
Megan Marsh
0cbd3ff0f3
make sure amazon builders respect ssh_host option
2019-09-26 12:30:04 -07:00
Megan Marsh
72d393c95a
update docs to show a use case for block device mappings
2019-09-25 16:48:04 -07:00
Adrien Delorme
4fb05e5bc4
fix test
2019-09-20 15:28:43 +02:00
Adrien Delorme
849de792da
re-apply doc changes of master
2019-09-20 15:04:01 +02:00
Adrien Delorme
3fe9d52e3f
Merge remote-tracking branch 'origin/master' into scrape_doc_to_builder_struct_config
2019-09-20 11:15:44 +02:00
Adrien Delorme
4d4bd38afa
Merge pull request #8087 from hashicorp/fix_8048
...
add retry wrapper to query so it handles rate limiting
2019-09-16 10:25:12 +02:00
Megan Marsh
9503802814
adding ctx makes the cancel channel redundant
2019-09-13 14:32:13 -07:00
Megan Marsh
4b497006b3
add retry wrapper to query so it handles rate limiting
2019-09-13 14:32:13 -07:00
Adrien Delorme
de9bb26f62
Merge branch 'master' into fix_7959
2019-09-10 12:21:33 +02:00
Adrien Delorme
9f8e9893b3
Merge remote-tracking branch 'origin/master' into scrape_doc_to_builder_struct_config
2019-08-29 14:22:16 +02:00
Adrien Delorme
86cee5cbef
Merge pull request #8034 from cove/retry-describe-instances
...
add AWS API call reties on AMI prevalidation
2019-08-29 10:48:54 +02:00
cove
87e0a3b5e7
add prevalidating AMI name retries so the build doesn't fail when throttled
2019-08-27 18:00:08 -07:00
Adrien Delorme
9d0bc476d9
add ommited struct interpolation
...
after dcc22df609
2019-08-27 15:17:57 +02:00
Adrien Delorme
5517d41468
make sure all documentation fields are there
...
* add missing `temporary_key_pair_name` field for alicloud
* add missing description to `vpc_filter` for aws
* add missing ssh communicator fields for aws
* add links for aws
* update vmware-vmx docs
* manually describe AMI Configuration section for ebsvolume
* display missing required ami_name field for aws
* add missing fields for docker
* add missing fields for openstack
2019-08-26 17:16:54 +02:00
Adrien Delorme
2efc94521b
use trilean initializers in test where missing
2019-08-23 11:17:45 +02:00
Megan Marsh
6a895db9be
converte block device encryption to trilean
2019-08-22 14:24:22 -07:00
Megan Marsh
1d9bba6fe3
change AMIEncryptBootVolume to trilean
2019-08-22 14:04:26 -07:00
Megan Marsh
1a6adadb89
convert EnableAMIENASupport to trilean in code
2019-08-22 13:18:22 -07:00
Megan Marsh
3c3f7f26ce
implement custom data type "trilean" (tri-state-boolean) to track booleans which have a "null" or "unset" state. Previously we used *bool for these template options, but it turns out that those won't work because "unset" will evaluate to "false" if a user is using template variables to set the option that maps to a *bool.
2019-08-22 13:18:15 -07:00
Adrien Delorme
4cb7c30987
Merge remote-tracking branch 'origin/master' into scrape_doc_to_builder_struct_config
2019-08-21 16:44:23 +02:00
Megan Marsh
4aa33306cb
make sure that fleetId exists before trying to stick it into error message
2019-08-19 13:44:39 -07:00
Megan Marsh
316a30b31d
fix spot_tags
2019-08-15 16:06:16 -07:00
Megan Marsh
9f6d14c75a
work around spot_tags related regression and bad fleet cleanup in spot instances
2019-08-14 11:08:59 -07:00
Megan Marsh
b42701380c
add test for nil case
2019-07-29 12:11:59 -07:00
DanHam
088151e51d
Type assertion safety - fix panic when key cannot be retrieved from statebag
2019-07-28 10:44:24 +01:00
Christian Muehlhaeuser
216afbaa8b
Fixed various typos
...
Just a bunch of nit-picky typo fixes.
2019-07-25 06:49:51 +02:00
Megan Marsh
54d2ad5028
refactored step_ami_region_copy to fix bugs and clarify assumptions; added more tests for that step.
...
fix race condition caused by variable declaration outside of loop
2019-07-17 11:30:20 -07:00
Megan Marsh
39a4da4d07
add code to deduplicate the region list, and to make sure that the original region's kms key id is in the map.
2019-07-11 16:56:40 -07:00
Megan Marsh
6ad975f296
Revert "move SSHInterface/SSHIPVersion fields to communitator.Config struct"
...
This reverts commit b0c09087a2
.
2019-07-02 10:46:10 -07:00
Megan Marsh
42611e6004
fix build
2019-07-01 13:03:33 -07:00
Megan Marsh
a60f7e395e
add a test to make sure we don't error becaue of spot price auto product, yet
2019-07-01 13:01:41 -07:00
Megan Marsh
c722afe707
stop calculating spot bids; amazon changed the way spot instances are priced to be stable rather than bid-based, so when user sets auto, we can just default to the ondemand price and know that they'll get the same price as everyone else bidding at that time.
2019-07-01 13:01:41 -07:00
Daniel Rodgers-Pryor
8a9753032c
Allow EC2 fleet packer instances to run in parallel
...
Without conflicting over the name of the launch template that they create/delete.
Previously, the launch template name was just hard coded to `packer-fleet-launch-template`, but since AWS enforces unique template names within an account, this caused simultaneously running packer instances to hit template-already-exists errors when creating their templates and race-conditions around deleting the template. Now, the template name is randomly generated on each run, so there should be no conflicts.
2019-06-30 16:19:35 +10:00
Adrien Delorme
433c40d72d
make block device example less specific
2019-06-19 12:10:08 +02:00
Adrien Delorme
9f4c8fb321
document ebs builder using partials
2019-06-18 17:41:50 +02:00
Adrien Delorme
a476ab79d7
document chroot builder using partials
2019-06-18 17:26:36 +02:00
Adrien Delorme
dcc22df609
aws: move the OmitFromArtifact field in ebssurrogat where it's being used
...
also, simplified a bit the usage of block device
2019-06-18 16:04:12 +02:00
Adrien Delorme
a86aae1c7e
mode KmsKeyId to chroot block device, as it's only used there
2019-06-18 15:25:17 +02:00
Adrien Delorme
9989845ada
add BuildEC2BlockDeviceMapping func to the BlockDevice type
2019-06-18 15:07:03 +02:00
Adrien Delorme
c696878d2e
aws block devices mapping: BlockDevices.Build -> BuildEC2BlockDeviceMappings()
2019-06-18 12:44:24 +02:00
Adrien Delorme
ff2e0298ba
simplify block devices utilisation by removing intermediary types
2019-06-18 12:37:47 +02:00
Adrien Delorme
78b29d1a74
up AMIBlockDevices docs
2019-06-18 11:55:12 +02:00
Megan Marsh
305592d8ed
fix copy logic and tests
2019-06-17 15:38:28 -07:00
Megan Marsh
8cc82ca8d2
add broken test
2019-06-17 15:04:19 -07:00
Megan Marsh
0d55bc46ee
add skip_save_build_region flag to fix naming conflicts when building for multiple regions
2019-06-17 14:39:11 -07:00
Adrien Delorme
daa9f9d34e
Merge remote-tracking branch 'origin/master' into scrape_doc_to_builder_struct_config
2019-06-14 15:17:56 +02:00
Megan Marsh
1c3b234b55
Merge pull request #7737 from hashicorp/document_retry
...
retry.Backoff: document
2019-06-13 10:54:08 -07:00
Adrien Delorme
6e3dc1aa9a
Merge remote-tracking branch 'origin/master' into scrape_doc_to_builder_struct_config
2019-06-12 14:28:11 +02:00
Adrien Delorme
98206d59d7
aws: step_create_tags make the max waiting time 30s and not 30ns
2019-06-11 12:37:52 +02:00
Pratyush Singhal
d92e82c43f
refactor: replace the maxBackoff from 30 nanosecond to 30 seconds
...
Co-Authored-By: Adrien Delorme <azr@users.noreply.github.com>
2019-06-11 16:01:03 +05:30
Pratyush singhal
d4b0cb68e3
feat: add retry for temp key-pair generation in amazon-ebs
...
Signed-off-by: Pratyush singhal <psinghal20@gmail.com>
2019-06-10 22:45:02 +05:30
Adrien Delorme
8e857d64f1
aws: rewrap struct comments for documentation generation
2019-06-06 17:34:17 +02:00
Adrien Delorme
4bf6a56d71
split communitacor.SSH & communitacor.WinRM to facilitate documentation
...
put doc for communicator into the struct
2019-06-06 16:55:24 +02:00
Adrien Delorme
4399684372
make fmt autogenerated docs
2019-06-06 16:29:25 +02:00
Adrien Delorme
e09f3fbd02
amazon: update docs & links
2019-06-05 16:42:18 +02:00
Adrien Delorme
e6cbb013ba
add // go:generate struct-markdown to all previously edited files
2019-06-05 16:42:18 +02:00
Adrien Delorme
f1917edd34
generate the comments for config struct of builders scraping doc website
2019-06-05 16:42:17 +02:00
Megan Marsh
3f036b33c5
test for length of ami tags before tagging
2019-06-03 19:14:06 -07:00
Megan Marsh
078d888dba
Merge pull request #7707 from CARFAX/master
...
Enable encrypted AMI sharing across accounts
2019-06-03 13:08:06 -07:00
Jason McIntosh
abef9820c7
Fixed spacing on comment
2019-05-30 17:25:36 -05:00
Jason McIntosh
24a4e2f23e
Updated comments
2019-05-30 17:18:33 -05:00
Jason McIntosh
24bc50ce1b
Enable encrypted AMIs with custom KMS Keys
2019-05-30 17:16:36 -05:00
Megan Marsh
6786c0d641
update tests to reflect new behavior
2019-05-30 16:17:23 -05:00
Megan Marsh
bda09bf7d5
the build ami is made with an intermediary name, which means that we can't skip copying even from the original build region when unencrypted
2019-05-24 15:08:20 -07:00
Megan Marsh
708165eaa8
refactoring step_run_spot_instance and swapping out the calls to create a spot instance with a call to create a spot fleet of one, so that we can be more flexible with the instance type when desired
2019-05-24 09:32:54 -07:00
Megan Marsh
1062295ecd
add omit_from_artifact option for ebssurragote launch_block_devices
2019-05-10 11:12:11 -07:00
Megan Marsh
2c352cc681
add tests for step_ami_region_copy
2019-05-03 14:47:09 -07:00
Megan Marsh
8c1d0f9686
clean up temporary unencrypted AMI and associated snapshots
2019-05-02 14:20:26 -07:00
Megan Marsh
c0e69a9da0
if encrypt_boot is explicitly set to false, don't copy. Also, make sure we don't cause a wait group block when we aren't performing a copy.
2019-05-02 13:28:43 -07:00
Megan Marsh
105d3f8853
delete unencrypted temporary snapshot when encrypt_boot is true. Also, fix nil map error in region copy
2019-04-17 12:55:30 -07:00
Megan Marsh
201c8c1332
make sure that you encrypt using the provided kms key id and not the default
2019-04-15 16:44:56 -07:00
Adrien Delorme
d72040f4fa
move retry code into the common/retry pkg and make retry context aware
2019-04-09 17:46:38 +02:00
Adrien Delorme
a81abd297b
Merge remote-tracking branch 'origin/master' into context_provisioner
2019-04-08 20:09:01 +02:00
Megan Marsh
3e72e65a6c
Merge pull request #7456 from hashicorp/do_5770
...
introduce the clean_resource_name to clean image/var names
2019-04-05 09:12:20 -07:00
Adrien Delorme
c4f3dccc14
rename interpolation context from ctx to ictx and contexts to ctx to avoid conflicts
2019-04-03 15:56:15 +02:00
Adrien Delorme
a4bf94dd3c
change Builder to be passed a context for cancellation
...
we have to to give it to our hook
2019-04-03 15:55:55 +02:00
Adrien Delorme
9836dad0c9
introduce the clean_resource_name to clean image names and deprecate the old ones
2019-04-03 11:25:51 +02:00
Akshat Mahajan
f07e4214cc
Addresses issues #5384 , #5494 : Rename and change `temporary_security_group_source_cidr`
...
to accept a list of strings (for Amazon builders).
Per this change, `temporary_security_group_source_cidr` in the configuration:
1. Will be renamed to `temporary_security_group_source_cidrs`.
2. Will accept a list of CIDRs.
3. Will have its documentation updated to reflect this change.
4. Will have a fixer attached for newer templates to avail of.
2019-03-30 15:47:03 -07:00
programmer04
596a9cc7ff
Improve error message for AWS and Alibaba
2019-03-15 23:38:05 +01:00
Megan Marsh
3ed9fe6dee
remove unused imports
...
remove HttpClientWithEnvironmentProxy from amazon builders; let access config handle it
2019-03-04 16:42:33 -08:00
Megan Marsh
ca9a5daf29
fix proxy and tls
2019-03-04 16:41:31 -08:00
Adrien Delorme
f535464097
up a test
2019-02-27 11:17:56 +01:00
Adrien Delorme
f03cbd8a10
aws: allow to pass nil bool as encryption parameter
...
to retain current encryption settings
this changes the fields :
* ami_config.encrypt_boot
* block_device.encrypted
This also removes StepCreateEncryptedAMICopy as this step is now done in StepAMIRegionCopy
2019-02-27 11:17:56 +01:00
Adrien Delorme
ce8532e94b
aws: document ValidateRegion better
2019-02-27 11:17:08 +01:00
Adrien Delorme
6af621c37a
aws: StepAMIRegionCopy call waitgroup.add only once
2019-02-27 11:17:08 +01:00
Michael F
01a0b0c766
kmsArnStartPattern - fix support for aws-us-gov
...
While the `kmsArnStartPattern` regexp supports `us-gov` as a region, it does not take the AWS partition into consideration.
For more info see https://docs.aws.amazon.com/govcloud-us/latest/ug-east/using-govcloud-arns.html
Added test case for AWS partition us-gov as well as a negative test case for a non-existing AWS partition.
2019-02-26 16:54:54 -08:00
Megan Marsh
026e543b24
move snapshot deletion to cleanup; this allows people with tag-specific permissions to perform snapshot deletion operation
2019-02-25 17:01:19 -08:00
Megan Marsh
2a613dd6e9
fix up the github suggestion
2019-02-11 11:49:17 -08:00
Adrien Delorme
3ae5a912d4
Update builder/amazon/common/step_pre_validate.go
...
Co-Authored-By: SwampDragons <megan@hashicorp.com>
2019-02-11 11:41:58 -08:00
Megan Marsh
3704a053d0
move region validation and credential wait into step pre validate
2019-02-05 14:07:04 -08:00
Megan Marsh
8add176ab7
finish first pass at vault code; needs testing and cleanup of error messages
2019-02-04 15:54:14 -08:00
Megan Marsh
7a78b47e83
make vault engine stuff into a little struct for easier management
2019-02-04 15:29:45 -08:00
Megan Marsh
035c3506ba
manually set proxyfromenvironment in default http client for ec2 sessions
2019-01-25 12:33:25 -08:00
Adrien Delorme
4a2773f8fa
remove default max retries config of 8, it will now be used from env
...
removing the code that wants to guess region from metadata allows us to change that setting, which can now be taken from environment.
2019-01-25 13:51:02 +01:00
Adrien Delorme
964b149df2
aws: remove now unused AccessConfig.metadataRegion
2019-01-25 13:03:14 +01:00
Adrien Delorme
335f442b51
aws: unwrap AccessConfig.region func
...
* it was used only in the Session() call.
* default region guessing from metadata should happen in the SDK, not 'manually'
2019-01-25 13:02:42 +01:00
Adrien Delorme
54af9951a8
make guard clauses to clearly see success pass
2019-01-25 13:00:21 +01:00
Adrien Delorme
0864b4d07b
name unclear import
2019-01-25 12:59:43 +01:00
Megan Marsh
e0543246fa
remove commented code
2019-01-16 11:05:11 -08:00
Megan Marsh
783ed32e7e
fix region stuff
2019-01-16 11:02:58 -08:00
Megan Marsh
ee2e5cc874
Merge pull request #7080 from hashicorp/do_6508
...
Move logging about aws waiters to the access config prepare() so that…
2018-12-12 15:42:37 -08:00
Tom Elliff
12bf7fc4d6
Check that the KMS key ID is valid
...
KMS key IDs can be given as either a raw key ID, an alias (always prefixed with 'alias/'), the full ARN to the KMS key ID or the full ARN to the KMS key alias.
Should help with https://github.com/hashicorp/packer/issues/6599 but probably isn't enough to fully close it.
2018-12-12 11:41:58 +00:00
Megan Marsh
042e9ad14b
Move logging about aws waiters to the access config prepare() so that it's only spit out once per builder.
2018-12-06 14:37:31 -08:00
Megan Marsh
da6e350949
fix tests
2018-11-20 15:20:01 -08:00
Megan Marsh
fbb3d526e3
move region validation to run so that we don't break validation when we don't have aws creds set
2018-11-20 15:01:28 -08:00
Mikhail Ushanov
536252683e
builders: reuse private key file reading function
...
Signed-off-by: Mikhail Ushanov <gm.mephisto@gmail.com>
2018-11-08 14:25:50 +03:00
Megan Marsh
79862f1bbb
Merge pull request #6931 from hashicorp/fix_6919
...
aws: better error handling of region/credential guessing from metadata
2018-11-05 11:24:09 -08:00
Adrien Delorme
3f288fc6ca
aws client: config.WithMaxRetries(8)
2018-11-01 15:09:07 +01:00
Mikhail Ushanov
4608b5d39d
amazon: add option for skipping TLS verification
...
Signed-off-by: Mikhail Ushanov <gm.mephisto@gmail.com>
2018-10-29 21:35:29 +03:00
Adrien Delorme
f4fbf45349
remove duplicate region check error
2018-10-26 17:44:56 +02:00
Adrien Delorme
16aa21dffe
aws: better error handling of region guessing from metadata
...
* this will fix #6919
2018-10-26 12:24:10 +02:00
Adrien Delorme
ed793a8fb8
make ValidateRegion a member of *AccessConfig and make it variadic
2018-10-24 11:26:53 +02:00
Megan Marsh
fe044d8ff7
fix tests
2018-10-23 13:31:56 -07:00
Megan Marsh
340009009d
Revert "Revert "Merge pull request #6892 from hashicorp/fix_6890""
...
This reverts commit 0cd3f36d50
.
2018-10-23 09:58:27 -07:00
Megan Marsh
0cd3f36d50
Revert "Merge pull request #6892 from hashicorp/fix_6890"
...
This reverts commit 1c4062c316
, reversing
changes made to 9bc41a23b9
.
2018-10-23 09:34:05 -07:00
Megan Marsh
0924a316b7
fix template-set credentials
...
update tests with mocked session
2018-10-22 13:53:40 -07:00
Megan Marsh
9573013d3a
Merge pull request #6872 from aspectcapital/disable-ena-support
...
Add support to explicitly disable ENA support
2018-10-19 10:54:38 -07:00
Matt Dainty
feb8067c7d
Convert `ena_support` to a pointer
...
This means it now has three states, `true`, `false`, & `nil`. The
default state is now `nil` which does nothing instead of `false` which
now will explicitly disable ENA support instead of just not enabling it.
2018-10-19 12:40:43 +01:00
Megan Marsh
57f87f58b9
Merge pull request #6374 from rickard-von-essen/aws-filters
...
builder/amazon: Add suppport for vpc_filter, subnet_filter, and security_group_filter
2018-10-18 14:34:02 -07:00
Megan Marsh
2266514408
Merge pull request #6843 from gmmephisto/pr-master-aws-security-group
...
aws: wait for temporary security group before authorize rules
2018-10-17 14:08:49 -07:00
Megan Marsh
e7d3a30c0e
Merge pull request #6865 from hashicorp/fix_6862
...
Fix 6862
2018-10-17 13:07:29 -07:00
Mikhail Ushanov
00c96fc400
aws: use IpPermissions for authorizing temporary security group
...
Signed-off-by: Mikhail Ushanov <gm.mephisto@gmail.com>
2018-10-17 22:00:25 +03:00
Mikhail Ushanov
b316be51cd
aws: wait for temporary security group before authorizing
...
Signed-off-by: Mikhail Ushanov <gm.mephisto@gmail.com>
2018-10-17 22:00:24 +03:00
Megan Marsh
b0cfecf314
remove unnecessary valid flag
2018-10-17 11:03:31 -07:00
Matt Dainty
9e0fae9db3
Add support to explicitly disable ENA support
...
If `ena_support` is set to false then it previously didn't do anything
whereas now it will explicitly disable ENA support.
Fixes #6852
2018-10-17 14:58:07 +01:00