Commit Graph

365 Commits

Author SHA1 Message Date
Ian Delahorne 2d1e1cc83e Sort AMI names in Artifact.String - fixes random test failures
With go tip, the output from Artifact.String will sometimes be output in a
different order than the tests. Sort the AMI strings before outputting.
See https://travis-ci.org/mitchellh/packer/jobs/28748467 for an example of this
failure.
2014-06-30 09:07:36 -05:00
James Massara be27ecc64b Add option to enable enhanced networking (SriovNetSupport) for images. 2014-06-04 14:58:11 -07:00
Brandon Turner b2258dc4e9
Fix chroot builder to work with chef-solo
According to be5adb92b5, the UploadDir
method supports two ways of copying depending on whether a trailing
slash is used:
    src = "dir"  -> dest/dir
    src = "dir/" -> dest

On BSD-based systems (such as OSX, FreeBSD, etc.) the `cp -R` command
handles these two cases automatically.  However, Linux treats "src/" and
"src" the same.

To support the trailing slash syntax portably, we can use:
    src = "dir"   -> dest/dir
    src = "dir/." -> dest

This works on BSD and Linux.  It is better than using wildcards as it
grabs hidden files as well.

This fixes #1196 that prevents the chef-solo provisioner from working
with the chroot builder.
2014-05-27 19:02:29 -05:00
Henry Huang da29d684a8 Enable the spot_price in "amazon-instance-store" AMI 2014-05-26 23:01:49 +08:00
Henry Huang 3980c7dcfd Save the spot request before waiting for its active state 2014-05-26 23:01:49 +08:00
Henry Huang 1e1fa3de26 Add the cleanup for existing spot request 2014-05-26 23:01:49 +08:00
Henry Huang 5d410bddc9 When unexpected state found in waiting, notify the caller func with a correct error message 2014-05-26 23:01:49 +08:00
Henry Huang 3a74c469e5 Add "spot_price" param into template processing 2014-05-26 23:01:49 +08:00
Henry Huang a411405628 Clean up code via "go fmt" 2014-05-26 23:01:49 +08:00
Henry Huang c33e7cc867 Add the support of launching spot instances in "amazon-ebs" AMI 2014-05-26 23:01:49 +08:00
Greg Burek 3a45712780 Adds support for encrypted EBS volumes 2014-05-22 11:36:22 -07:00
Henry Huang 43385a58bc Refine the comments 2014-05-20 11:16:50 +08:00
Henry Huang e8c09ae223 Add the cleanup when the process of EBS AMI interrupted 2014-05-20 00:40:39 +08:00
Pierre Riteau 5294e0ed61 Remove unused file 2014-05-15 17:22:40 +01:00
Ross Smith II d92179847d provisioner/file: set file/directory permissions
fixes #1064
2014-05-09 21:03:35 -07:00
Jaime Soriano Pastor 32bb745734 Force LANG=C before appending rest of environment, as only first occurence is used 2014-05-08 17:11:19 +02:00
Nathan Hartwell be5adb92b5 Appending wildcard to src causes problems
It appears that the desired effect was to support
    src = "dir" -> dest/dir
    src = "dir/" -> dest

but cp -R already handles this, provided the trailing slash does not
get consumed by the shell.

The wildcard causes problems when multiple files match the
shell glob, e.g.

UploadDir("/tmp", "./salt*", [])

where my working dir contains
 - salt
 - salt-foo

will error.
2014-05-02 11:18:56 -05:00
Mitchell Hashimoto 0417ae3059 builder/amazon: alphabetize some things 2014-04-30 15:43:11 -07:00
Mitchell Hashimoto 0558d56bcf builder/amazon/chroot: get tests psasing on Windows 2014-04-26 12:31:55 -07:00
Mitchell Hashimoto e84e5e4f2c Merge branch 'update-ssh-package' of github.com:higebu/packer into higebu-update-ssh-package
Conflicts:
	builder/amazon/common/ssh.go
	builder/digitalocean/ssh.go
	builder/googlecompute/ssh.go
	builder/openstack/ssh.go
	communicator/ssh/communicator_test.go
	communicator/ssh/keychain.go
	communicator/ssh/keychain_test.go
2014-04-26 11:12:06 -07:00
Ross Smith II e38ff2f84e Merge pull request #1021 from laggyluke/master
builder/amazon: configurable virtualization type
2014-04-21 18:08:32 -07:00
Ross Smith II ef1898083a Merge pull request #971 from fnoeding/amazon-sshkey
optionally use existing ssh key for amazon builders
2014-04-21 08:10:05 -07:00
higebu f087ce16dc Fix the build problem by updating ssh package 2014-04-15 10:17:26 +09:00
Ross Smith II 27491f93f8 use old ssh code until higebu's branch is ready, see #1019 2014-04-11 08:23:12 -07:00
George Miroshnykov fc6e8c0830 builder/amazon: configurable virtualization type 2014-04-10 15:16:31 +03:00
Florian Noeding 6371b70609 optionally use existing ssh key for amazon builders 2014-03-24 12:47:00 +01:00
Nathan Sullivan e44fb1bd2a increase SSH timeouts for Amazon builders, they can take a while to spin up at times 2014-03-04 11:31:14 +10:00
Alan Grosskurth af89b31a40 builder/amazon: Fix S3 endpoint URL for instance-store builds
The S3 endpoint URLs don't always include the region name. See:

    http://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region

This mapping is already provided by `goamz` via `region.S3Endpoint`,
so let's use it.
2014-02-23 22:49:10 -08:00
Ross Timson 58444627c1 Use --url flag rather than --location for ec2-upload-bundle
AWS docs (http://goo.gl/rNZiCs) show that --location is deprecated and
to use the --url flag and reference the region endpoint instead.
2014-02-13 09:36:45 +00:00
Mitchell Hashimoto 5c7e7daac9 comments 2013-12-28 10:04:15 -07:00
Mitchell Hashimoto 8204944c0e builder/amazon: handle cases when amazon SG isn't available [GH-494] 2013-12-28 10:03:22 -07:00
Mitchell Hashimoto 8aabe01bad builder/amazon/common: run_tags to apply to launch [GH-722] 2013-12-27 20:54:35 -07:00
Mitchell Hashimoto 8e4ce2c591 builder/amazon: alphabetize 2013-12-21 14:22:05 -08:00
Mitchell Hashimoto 4a2793445f builder/amazon/chroot: mount in device-specific places 2013-12-21 09:16:09 -08:00
Mitchell Hashimoto ae7459718d builder/amazon/instance: use US if region us-east-1 for upload [GH-729] 2013-12-18 09:00:20 -08:00
Mitchell Hashimoto b95ad0c232 builder/amazon/all: launched instances have a name [GH-642] 2013-12-16 18:11:23 -08:00
Mitchell Hashimoto 1234e61cda builder/amazon/all: get rid of unnecessary field 2013-12-12 21:38:48 -08:00
Mitchell Hashimoto 5e0da21173 builder/amazon/ebs: nicer output 2013-12-12 12:24:51 -08:00
Mitchell Hashimoto 4677f38882 builder/amazon: parallelize AMI region copies [GH-495] 2013-12-12 12:24:32 -08:00
Mitchell Hashimoto f7b1c2dbc6 builder/amazon/instance: add location to upload command [GH-679] 2013-12-06 19:04:40 -08:00
Mitchell Hashimoto 2110edb690 builder/amazon/chroot: remove unused import 2013-12-06 18:32:21 -08:00
Mitchell Hashimoto 2dad0cdca7 builder/amazon/chroot: block when obtaining lock [GH-689] 2013-12-06 18:28:48 -08:00
Nathan Sullivan e711255d95 fix some debugging for PublicIpAddress 2013-11-26 15:03:45 +10:00
Nathan Sullivan 4809186c12 remove excess debugging 2013-11-26 15:02:43 +10:00
Nathan Sullivan 6270d759cd revert whitespace changes - not necessary anymore 2013-11-26 15:01:57 +10:00
Nathan Sullivan 13f55bdec6 working AssociatePublicIpAddress support 2013-11-26 14:45:06 +10:00
Nathan Sullivan 5cbff00afa goamz aspects of AssociatePublicIpAddress working now 2013-11-26 14:14:43 +10:00
Nathan Sullivan 49a131951a reverting testing stuff 2013-11-26 13:46:32 +10:00
Nathan Sullivan 0cfb7564d5 lets try a string instead of a bool for AssociatePublicIpAddress 2013-11-26 13:44:39 +10:00
Nathan Sullivan 5df7bc0acf oops bugfix for work on https://github.com/mitchellh/packer/issues/578 2013-11-26 12:05:37 +10:00
Nathan Sullivan 31bf1f342c https://github.com/mitchellh/packer/issues/578 2013-11-26 11:32:08 +10:00
Mitchell Hashimoto cc13e6690c builder/amazon/chroot: don't choose partition mount point if taken
[GH-635]
2013-11-19 12:50:33 -08:00
Mitchell Hashimoto 3adbd09639 builder/amazon/chroot: fix compile error 2013-11-08 11:19:10 -08:00
Mitchell Hashimoto 3780b57a1f builder/amazon/chroot: allow no such file errors on upload [GH-588] 2013-11-08 10:53:54 -08:00
Mitchell Hashimoto 17f1ee3e98 builder/amazon/chroot: quote commands and pass through a shell [GH-581] 2013-11-08 10:22:56 -08:00
Mitchell Hashimoto c8e911cdc3 Merge branch 'security-groups' of https://github.com/whiteley/packer into whiteley-security-groups
Conflicts:
	builder/amazon/common/run_config.go
2013-11-05 14:34:12 -08:00
Mitchell Hashimoto 3cd7379d1f builder/amazon/*: warnings 2013-11-02 22:56:54 -05:00
Mitchell Hashimoto 7f639d89b6 builder/amazon/*,builder/openstack: properly scrub sensitive [GH-554] 2013-11-02 11:34:54 +01:00
Mitchell Hashimoto f4b404627c builder/amazon/instance: support AZ here too 2013-10-23 20:44:38 -07:00
Mitchell Hashimoto b95a56899f builder/amazon: rename availzone to availability zone 2013-10-23 20:44:11 -07:00
Matthew Hooker 1aa551a49c builder/amazon/common: Add AvailZone to StepRunSourceInstance struct
[GH-536]
2013-10-21 08:08:00 -07:00
Matthew Hooker 60428cef60 builder/amazon/ebs: Add config for target AZ.
Fixes [GH-536]
2013-10-21 08:01:34 -07:00
Matthew Hooker 79ac16c3d7 builder/amazon/chroot:
Delete files at destination before copy. This should help with the dangling
symbolic link issue we've been seeing with ubuntu.

fixes GH-500
2013-10-17 22:50:02 +00:00
Mitchell Hashimoto 24ad445e2b builder/amazon,builder/openstack: remove more cgl libs 2013-10-16 16:29:53 -10:00
Mitchell Hashimoto 79f7936d66 Remove dependency on identifier package, use time ordered UUID [GH-541] 2013-10-16 16:21:14 -10:00
Mitchell Hashimoto 26b6e27917 Merge pull request #522 from patricklucas/fix_instance_not_found_race
builder/amzon: fix race condition after launching EC2 instance
2013-10-14 01:45:55 -07:00
Matthew Hooker 5315b19822 common/config: config filter function [GH-521]
Fixes #521
2013-10-13 11:01:12 -07:00
Patrick Lucas e17984face Fix race condition after launching EC2 instance
It is possible for an instance to not immediately exist after it is
launched. Previously, InstanceStateRefreshFunc would crash if this race
condition were realized.

This change takes the exact same approach of the function above,
AMIStateRefreshFunc, treating 'InvalidInstanceID.NotFound' as if there
were an empty result.
2013-10-11 14:25:18 -07:00
Matt Whiteley 09f4011234 builder/amazon: instances can be launched with a list of security groups 2013-10-04 10:42:45 -07:00
Matthew Hooker 5c41eccfd5 Fix the way we run commands in chroot.
* Single quotes around chroot command cause it to fail.
* The chroot command also gets passed through the CommandWrapper template, so having sudo would clash with however the user wants to run it.
* Fix spelling mistake.
2013-10-01 09:35:55 +00:00
Mitchell Hashimoto 38d3411f80 builder/amazon/chroot: remove unused comment 2013-09-30 09:35:58 -07:00
Mitchell Hashimoto b554a0dd86 builder/amazon/chroot: CommandWrapper
/cc @mwhooker - I changed the interface up a bit to return an error,
since things should return errors in Go (the ui.Error bit was kind of
ghetto because it had no way to bubble that error up except through the
UI).

Using this, I made it so that the communicator uses both a
CommandWrapper and ShellCommand with chroot so that the chroot commannd
is also wrapped (it wasn't before).

I think the functionality of all this is the same but I'd love if you
could look it over and make sure.
2013-09-30 09:33:57 -07:00
Mitchell Hashimoto 535888d9d8 builder/amazon/chroot: alphebatize the configs
/cc @mwhooker
2013-09-30 09:32:20 -07:00
Matthew Hooker 5f19648268 comment, formatting. 2013-09-29 08:04:57 +00:00
Matthew Hooker a15f629f4f WIP copying files. 2013-09-28 01:10:33 +00:00
Matthew Hooker 831d5caa50 move wrapper definitions around. 2013-09-27 22:08:15 +00:00
Matthew Hooker 39c3051a95 building but there's an exec error. 2013-09-27 20:47:44 +00:00
Matthew Hooker d2f9ba0d11 fixing up types. 2013-09-27 11:55:19 +00:00
Matthew Hooker ac496a63dc replace command config with wrapper command. 2013-09-27 10:54:53 +00:00
Matthew Hooker cebbcc51a6 fix chroot Upload command. 2013-09-27 02:11:28 +00:00
Matthew Hooker de83755c00 wip 2013-09-26 18:34:01 -07:00
Matthew Hooker c15bb28491 bugfixes, wip 2013-09-27 01:28:06 +00:00
Matthew Hooker 1104ad3e17 get chroot command from proper place. 2013-09-26 16:39:37 -07:00
Matthew Hooker 6b1a7938d8 Merge remote-tracking branch 'origin/master' into 430 2013-09-26 16:24:28 -07:00
Matthew Hooker ee60ed319b We're not using this log package. 2013-09-26 02:31:10 -07:00
Matthew Hooker e1dadfc57a Unit tests. 2013-09-26 02:25:57 -07:00
Matthew Hooker 23a331fc00 bugfix. 2013-09-26 01:35:29 -07:00
Matthew Hooker 7740c8fed5 using blocking cp method. 2013-09-26 01:32:53 -07:00
Matthew Hooker 5e9ff92ff3 Revert "notes/reorg."
This reverts commit 73c5aec24d.

Conflicts:
	builder/amazon/chroot/step_copy_files.go
2013-09-26 01:16:51 -07:00
Matthew Hooker ce3725efec wip 2013-09-26 01:08:06 -07:00
Matthew Hooker 36326ee8c2 Merge branch 'master' into 430 2013-09-26 01:04:42 -07:00
Matthew Hooker 7fa238503b wip 2013-09-26 00:58:25 -07:00
Matthew Hooker dd356d33d8 notes/reorg. 2013-09-26 00:31:07 -07:00
Matthew Hooker 5086ff1a4e pass chroot command to /bin/sh
this allows us to specify an arbitrary chroot command, i.e. for sudo
2013-09-25 03:20:22 -07:00
Bob Potter af477a59df Update builder-amazon-chroot to work with WaitForState changes in 7c56148f 2013-09-24 23:44:03 -05:00
Mitchell Hashimoto cf10fff7fa builder/amazon/common: save access/secret key from env [GH-434] 2013-09-18 13:59:23 -07:00
Jesse Nelson c7e1681163 exclude everything in /tmp, but keep /tmp itself
There is IMO a bug with image builder that it removes /tmp, in the
current setup. This patch makes the image bundle ignore everyting in
/tmp, but keeps /tmp on the box.
2013-09-18 13:42:15 -07:00
Matthew Hooker 1befba24ed Allow user to override chroot command. 2013-09-17 05:58:16 -07:00
Mitchell Hashimoto 61320b20a9 builder/amazon/common: error if WaitForState can't find resource
repeatably
2013-09-12 20:37:14 -07:00
Mitchell Hashimoto 1bf91e2845 builder/amazon/common: rename instance.go to state.go, makes more sense 2013-09-12 20:33:58 -07:00
Mitchell Hashimoto 27608a7b0f builder/amazon/*: use WaitForState for AMIs 2013-09-12 20:33:32 -07:00
Mark Peek f941718c3e builder/amazon: add clean_ami_name template function
Add a clean_ami_name template function which will translate illegal
characters in an AMI name to '-'. Example usage would be:
    "ami_name": "Ubuntu 12.04 {{isotime | clean_ami_name}}"
2013-09-07 18:42:50 -07:00
Mitchell Hashimoto 48a53446bf builder/amazon/common: don't need squash here 2013-09-06 11:48:38 -07:00
Mitchell Hashimoto e9d6e83436 builder/amazon/common: support NoDevice [GH-396] 2013-09-06 11:44:57 -07:00
Mitchell Hashimoto 0e2511767e builder/amazon/common: if instance query returns none, ignore 2013-09-05 17:19:23 -07:00
Mitchell Hashimoto f2069c1cd6 Merge pull request #388 from jmassara/ami_region_copy
builder/amazon/all: AMI region copy fixes
2013-09-05 17:14:16 -07:00
Mitchell Hashimoto ed7e0847fd builder/amazon/all: TemporaryKeyPairName
/cc @whostolebenfrog - I actually simplified things quite a bit. I added
a "uuid" global template function so it just uses that now. I renamed it
so that it is clear it is a temporary keypair.
2013-09-05 12:23:08 -07:00
Ben Griffiths f953874448 Allow customization of SSH Key pair pattern
Defined in a template using ssh_keypair_pattern. Defaults to "packer %s"
2013-09-05 13:28:31 +01:00
James Massara 985ce790d0 Also deregister AMI if it was copied to other regions 2013-09-04 17:48:00 -07:00
James Massara 5bca569fa4 builder/amazon: Re-ordered steps for AMI region copying so tags and
launch permissions are also applied to copied AMIs
2013-09-04 16:06:06 -07:00
Mitchell Hashimoto 0231d798e4 builder/amazon/instance: new multistep API 2013-08-31 13:03:13 -07:00
Mitchell Hashimoto b04cff5a9e builder/amazon/ebs: new multistep API 2013-08-31 13:00:43 -07:00
Mitchell Hashimoto 80ed7eddf4 builder/amazon/chroot: new multistep API 2013-08-31 12:58:55 -07:00
Mitchell Hashimoto 8019cd1839 builder/amazon: don't chmod on windows 2013-08-30 15:04:23 -07:00
Mitchell Hashimoto 4bb320d86f builder/amazon: chmod debug key so it is ssh-ready 2013-08-30 15:03:29 -07:00
Mitchell Hashimoto 9186a7f214 builder/amazon: output DNS name if debug mode 2013-08-30 14:55:56 -07:00
Mitchell Hashimoto 57f185451a builder/amazon: drop private key if debug mode [GH-373] 2013-08-30 14:48:50 -07:00
Mitchell Hashimoto d857c9ccbb builder/amazon/chroot: implement UploadDir for chroot communicator 2013-08-25 20:30:56 -07:00
Mitchell Hashimoto f76a09fc08 builder/amazon/instance: remove check for AMI tools [GH-330] 2013-08-23 15:53:54 -07:00
Mitchell Hashimoto 251abc3496 builder/amazon: modify attributes before region copy
/cc @jmassara
2013-08-22 15:35:47 -07:00
Mitchell Hashimoto 42beac4516 builder/amazon/common: modify output for AMI copy 2013-08-22 15:32:24 -07:00
Mitchell Hashimoto e7a50133b6 builder/amazon: support tags in chroot and instance 2013-08-22 15:11:54 -07:00
Mitchell Hashimoto d03c852ac2 builder/amazon/common: move tags into ami_config 2013-08-22 15:09:21 -07:00
Mitchell Hashimoto ef142ce886 builder/amazon: region copy must go before modify attributes
/cc @jmassara - This has to go before the modify attributes so that
the attributes are properly modified on all resulting AMIs.
2013-08-22 15:03:30 -07:00
Mitchell Hashimoto a4f674f8ed builder/amazon/common: remove duplicates from ami_region
/cc @jmassara
2013-08-22 14:58:21 -07:00
James Massara c9de4c9644 Make sure ami_regions are valid 2013-08-21 18:44:14 -07:00
James Massara 228d0d593a amazon/common: Added AMI CopyImage support 2013-08-21 13:53:07 -07:00
Mitchell Hashimoto c5823be2e0 builder/amazon: fix crash case if SIGINT while waiting for instance 2013-08-17 09:45:23 -06:00
Mitchell Hashimoto b49fe4971a builder/amazon: modifying more than one AMI attribute type works 2013-08-15 20:28:35 -07:00
Mitchell Hashimoto 64d87bfaf3 *: switch to packer ConfigTemplate 2013-08-15 19:17:23 -07:00
Mark Peek 91670cea07 builder/amazon: add block device mappings [GH-90] 2013-08-15 14:05:08 -07:00
Jeremy Carroll 0a0c0c89c6 Was missing sending IAM profile data to instance store builders. 2013-08-14 19:03:41 -07:00
Mitchell Hashimoto 7cc9aa36ff builder/amazon/common: correct logic in deleting secutiry group 2013-08-12 13:43:52 -07:00
Mitchell Hashimoto 48b9da2feb builder/amazon/common: retry deleting security group [GH-278] 2013-08-12 13:34:55 -07:00
Mitchell Hashimoto 09fb6ca593 builder/amazon/all: support user data file 2013-08-12 11:53:50 -07:00
Mitchell Hashimoto 3ff3746969 builder/amazon/common: support user_data_file 2013-08-12 11:52:43 -07:00
Mitchell Hashimoto f69b365f39 Merge pull request #253 from phobos182/master
builder/amazon/common: added passing UserData to goamz.
2013-08-12 11:36:15 -07:00
Mitchell Hashimoto 332bdf6edc builder/*, provisioner/*: set user vars 2013-08-09 15:57:08 -07:00
Jeremy Carroll 6599f5a255 Log error messages from goamz. 2013-08-09 11:55:34 -07:00
Mitchell Hashimoto b4d18f9d30 builder/amazon/chroot: can modify AMI attributes 2013-08-08 22:52:39 -07:00
Mitchell Hashimoto fd6dbc42d1 builder/amazon/common: rename StepModifyAttributes to
StepModifyAMIAttributes
2013-08-08 22:51:48 -07:00
Mitchell Hashimoto bfc2ac1eaa builder/amazon/common: AMIConfig common config
/cc @jmassara - I pulled out the AMI stuff into a common config
struct and also added in the new template stuff (that didn't exist
when you made the pull, so not your fault! :))
2013-08-08 22:50:37 -07:00
Mitchell Hashimoto 96a91e9555 builder/amazon/common: on modify AMI attributes, skip if no work
/cc @jmassara
2013-08-08 22:46:50 -07:00
Mitchell Hashimoto dcfbef4fc0 builder/amazon/common: use new API for goamz to set AMI attributes
/cc @jmassara
2013-08-08 22:43:29 -07:00
James Massara 2ba59617fc builder/amazon/all: Added support for setting attributes on the AMI 2013-08-08 22:35:21 -07:00
Mitchell Hashimoto 716d68bff3 builder/amazon: more efficient use of templates 2013-08-08 17:25:26 -07:00
Mitchell Hashimoto 2b86d32675 builder/amazon: remove unnecessary validation 2013-08-08 17:25:25 -07:00
Mitchell Hashimoto 75ff149ac1 builder/amazon/instance: switch to new template stuff 2013-08-08 17:25:25 -07:00
Mitchell Hashimoto c8a98683d5 builder/amazon/ebs: get rid of unnecessary template 2013-08-08 17:25:25 -07:00
Mitchell Hashimoto 5f34ec0ebc builder/amazon/chroot: switch to new template stuff 2013-08-08 17:25:25 -07:00