Commit Graph

534 Commits

Author SHA1 Message Date
Mitchell Hashimoto 118f4fdcce packer: `only` metaparameter for provisioners [GH-438] 2013-09-20 10:49:35 -07:00
Mitchell Hashimoto f85c9e4354 packer/rpc: set keep-alive on all RPC connections [GH-416] 2013-09-18 17:15:48 -07:00
Mitchell Hashimoto 3163d785c8 Update version for dev 2013-09-09 15:19:59 -07:00
Mitchell Hashimoto a049ff9c31 v0.3.7 2013-09-09 15:04:13 -07:00
Mitchell Hashimoto adbb490189 provisioner/file: support uploading directories [GH-251] 2013-09-09 14:00:06 -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 4bd3f09099 Merge branch 'master' of https://github.com/armon/packer into armon-master
Conflicts:
	packer/config_template.go
2013-09-05 17:12:15 -07:00
Mitchell Hashimoto 4642a6aee1 packer: uuid function 2013-09-05 12:19:56 -07:00
Armon Dadgar fab369bf15 Adding support for isotime template variable 2013-09-05 11:09:37 -07:00
Mitchell Hashimoto 0976258136 up version for dev 2013-09-02 10:42:05 -07:00
Mitchell Hashimoto 0c198ba2d5 v0.3.6 2013-09-02 10:19:27 -07:00
Mitchell Hashimoto ac2a4807d4 packer: fix required var check to work properly 2013-08-31 17:36:43 -07:00
Mitchell Hashimoto fd4b01cf85 packer: required user variables [GH-374] 2013-08-31 17:33:17 -07:00
Mitchell Hashimoto 0dc347c70d packer: implement Cancel in ProvisionHook 2013-08-30 23:39:29 -07:00
Mitchell Hashimoto 47cd6df85b packer: Add Cancel method to Provisioner 2013-08-30 23:21:15 -07:00
Mitchell Hashimoto 6312f680da packer/rpc: test concurrent cancel/run 2013-08-30 23:10:16 -07:00
Mitchell Hashimoto 99ababda20 packer/rpc: implement hook Cancel 2013-08-30 23:03:43 -07:00
Mitchell Hashimoto 30bf8ffc7d packer: reset runningHook when done 2013-08-30 22:59:13 -07:00
Mitchell Hashimoto e210151408 packer: implement Cancel on DispatchHook 2013-08-30 17:26:51 -07:00
Mitchell Hashimoto 80e8e09ec7 packer: Add Cancel() method to hook 2013-08-30 17:03:55 -07:00
Mitchell Hashimoto d5c6b9fad3 packer/plugin: Interrupted() to check for i nterrupts 2013-08-30 16:39:28 -07:00
Mitchell Hashimoto 893c9e02c0 packer/plugin: Count number of interrupts atomically 2013-08-30 16:29:21 -07:00
Mitchell Hashimoto 71379bc8d7 packer: pass tests 2013-08-30 16:07:06 -07:00
Mitchell Hashimoto 662e74d070 provisioner/chef-solo: properly escape user vars for JSON
/cc @mwhooker - I moved the processing up into Prepare so that any
errors will be shown during a validate pass. Also, I escape some stuff
in keys. Tests moved as well.
2013-08-30 16:05:04 -07:00
Matthew Hooker d2e8bf476f reuse jsonString instead of opaque result var. 2013-08-28 20:16:06 -07:00
Matthew Hooker 9537f085ae clean up and retab. 2013-08-28 17:35:43 -07:00
Matthew Hooker 4b76b2d9e3 template expansion of `json` in chef-solo
Fixes #362
2013-08-28 17:27:22 -07:00
Mitchell Hashimoto 5887472a6f packer/plugin: fix nil deref during ctrl-c of provisioner 2013-08-28 11:21:02 -07:00
Mitchell Hashimoto 9efc05dbbf Up vesrion for dev 2013-08-28 11:16:28 -07:00
Mitchell Hashimoto be86264d21 v0.3.5 2013-08-28 10:47:19 -07:00
Mitchell Hashimoto 747f260678 packer: template error if override specified for bad builder [GH-336] 2013-08-27 21:34:55 -07:00
Mitchell Hashimoto 86abf14b28 communicator/ssh: Trailing slash won't create destination dir 2013-08-25 20:47:10 -07:00
Mitchell Hashimoto 1010c8ae19 packer/rpc: implement UploadDir 2013-08-25 20:30:56 -07:00
Mitchell Hashimoto 8b21b5b713 packer/rpc: use public MockCommunicator, tests pass 2013-08-25 20:30:56 -07:00
Mitchell Hashimoto 46e02209a9 packer: Add UploadDir to the Communicator interface 2013-08-25 20:30:56 -07:00
Mitchell Hashimoto 0484006e34 packer: no need to check if nil since we're appending to slice 2013-08-23 15:25:02 -07:00
Mitchell Hashimoto 443ccc5306 packer/rpc: don't panic on failed Ui calls 2013-08-23 14:39:59 -07:00
Mitchell Hashimoto faeba2a14f packer/plugin: swallowInterrupts in plugin should swallow all 2013-08-23 14:22:32 -07:00
Mitchell Hashimoto 36b97b820f packer/rpc: error instead of panic cancelling builder 2013-08-23 13:58:00 -07:00
Mitchell Hashimoto df70443a7c packer/rpc: less panics 2013-08-23 13:57:26 -07:00
Mitchell Hashimoto 9e12492f96 packer/rpc: fix build by missing import 2013-08-22 11:53:54 -07:00
Mitchell Hashimoto c0d194600b packer/rpc: get rid of panicable case 2013-08-22 11:45:58 -07:00
Mitchell Hashimoto 6d9265a244 packer: add mock implementations and more template tests 2013-08-22 11:32:59 -07:00
Mitchell Hashimoto c91558ffe2 up version for dev 2013-08-21 11:55:45 -07:00
Mitchell Hashimoto 3f18a31c24 v0.3.4 2013-08-21 11:44:20 -07:00
Mitchell Hashimoto 5559e49df3 packer/plugin: remove race in Exited() 2013-08-21 11:00:07 -07:00
Mitchell Hashimoto c05b6d628b packer/plugin: get rid of data race setting exited for Client 2013-08-21 10:56:58 -07:00
Mitchell Hashimoto e4e372046b packer/plugin: fix data race reading stdout in Client 2013-08-21 10:49:57 -07:00
Mitchell Hashimoto a66085444c packer/rpc: get rid of data races in tests 2013-08-21 10:21:32 -07:00
Mitchell Hashimoto 6f742cb332 packer: fix data race in communicator 2013-08-21 10:16:33 -07:00
Mitchell Hashimoto cfa9cef2bf packer/plugin: Set killed in the kill clients method 2013-08-19 23:39:14 -07:00
Mitchell Hashimoto f68e00085b packer/plugin: Killed bool to avoid panics when killing clients 2013-08-19 23:38:22 -07:00
Mitchell Hashimoto 8b00c82898 packer/rpc: when communicator abruptly exits, set exit status 123 2013-08-19 23:21:53 -07:00
Mitchell Hashimoto 1be6563e4c update version for dev 2013-08-19 16:39:00 -07:00
Mitchell Hashimoto 256135340e v0.3.3 2013-08-19 16:25:58 -07:00
Mitchell Hashimoto de1e94eb90 packer/plugin: set TCP keep-alive on connection 2013-08-19 16:25:00 -07:00
Mitchell Hashimoto a329d7dd2f packer: remove keep_input_artifact prior to sending to build [GH-310] 2013-08-19 16:00:25 -07:00
Mitchell Hashimoto be5ed793f9 packer: postProvisioner should be postProcessor 2013-08-19 15:55:30 -07:00
Mitchell Hashimoto b998e88b0a up version for dev 2013-08-18 12:27:25 -06:00
Mitchell Hashimoto b0848b274f v0.3.2 2013-08-18 10:38:00 -06:00
Mitchell Hashimoto 1e520b161b packer: ConfigTemplate, move from common 2013-08-15 19:11:27 -07:00
Mitchell Hashimoto ebea49bf89 packer: shuffle some tests around to where they make more sense 2013-08-15 17:46:41 -07:00
Mitchell Hashimoto df48c6253c packer: Parallelize synopsis lookup to speed up help output
Using `time` to calculate the average of 100 iterations on my machine,
`packer` went from 130ms on average to 70ms.

Previously, the load time would scale linearly about 30ms (on my
machine) on average per new command added. Now that is much much
smaller.
2013-08-13 10:16:25 -07:00
Mitchell Hashimoto 476066108f packer: get rid of unused code 2013-08-13 09:56:37 -07:00
Mitchell Hashimoto b11004b9f6 packer: ParseTemplateFile understands "-" to mean stdin 2013-08-13 09:52:32 -07:00
Mitchell Hashimoto a17c939042 packer: export template RawConfig 2013-08-13 09:11:49 -07:00
Mitchell Hashimoto f78d7708d1 packer: Export the raw template config structs 2013-08-13 09:10:49 -07:00
Mitchell Hashimoto da6bc82d5c packer: unknown commands show better on UI 2013-08-13 09:07:08 -07:00
Mitchell Hashimoto 35a9858444 Up version for dev 2013-08-12 17:23:14 -07:00
Mitchell Hashimoto 1243ff6c16 v0.3.1 2013-08-12 17:05:54 -07:00
Mitchell Hashimoto 392aba1fe7 packer: Don't output up to \r with remote command, lost anyways 2013-08-12 16:55:17 -07:00
Mitchell Hashimoto 656de901ca packer: replace stdout/stderr after StartWithUi
This just kind of shields the error with StartWithUi if we retry
2013-08-12 15:17:17 -07:00
Mitchell Hashimoto 7eb115f7a9 Up version for dev 2013-08-12 14:16:55 -07:00
Mitchell Hashimoto 5ee1b1c451 v0.3.0 2013-08-12 13:57:04 -07:00
Mitchell Hashimoto 116cdc6c75 packer/rpc: ui.Machine works over RPC properly 2013-08-12 10:25:56 -07:00
Mitchell Hashimoto 547d184855 packer: machine readable output for available commands 2013-08-12 09:22:01 -07:00
Mitchell Hashimoto d9bfe58c93 packer: version machine-readable output 2013-08-11 23:56:47 -07:00
Mitchell Hashimoto a675b89b0e packer: -machine-readable not double hyphen 2013-08-11 23:26:24 -07:00
Mitchell Hashimoto b3e8a41954 packer: document machine-readable 2013-08-11 23:24:57 -07:00
Mitchell Hashimoto c77d26e46c packer: replace \r with literal on Ui for MR 2013-08-11 23:19:13 -07:00
Mitchell Hashimoto ba3344a322 packer: replace new lines with literal \n 2013-08-11 23:18:14 -07:00
Mitchell Hashimoto 7b4b5d23fc packer: output a newline after each MR line 2013-08-11 23:14:42 -07:00
Mitchell Hashimoto aa143a330b packer: TargettedUi properly targets machine-readable data 2013-08-11 19:08:08 -07:00
Mitchell Hashimoto 89be12ae21 packer: Add MachineReadableUi 2013-08-11 19:05:07 -07:00
Mitchell Hashimoto edc59499e7 packer: BasicUi doesn't do machine-readable, just log 2013-08-11 18:38:24 -07:00
Mitchell Hashimoto 03c10a9aa8 packer: renamed PrefixedUi to TargettedUi 2013-08-11 18:31:28 -07:00
Mitchell Hashimoto 02edc7579b packer: Rename ReaderWriterUi to BasicUi 2013-08-11 18:20:27 -07:00
Mitchell Hashimoto fb6d2754da packer: Add Machine func to Ui 2013-08-11 18:16:00 -07:00
Mitchell Hashimoto 5220c1ff2a packer/rpc: register map[string]string since we transfer that 2013-08-09 16:53:18 -07:00
Mitchell Hashimoto 5166f511d2 common/json: add Unmarshal with method with syntax errors 2013-08-09 16:50:24 -07:00
Mitchell Hashimoto 643d9033ad packer: add ParseTemplateFile since that is useful 2013-08-09 15:57:08 -07:00
Mitchell Hashimoto 598f11f168 packer: properly override/send user variables to prepare 2013-08-09 15:57:08 -07:00
Mitchell Hashimoto 3f0a268e1e packer, packer/rpc: Update Build interface to allow variable overrides 2013-08-09 15:57:07 -07:00
Mitchell Hashimoto 95b598f748 packer: Template understands variables, puts it into a Build 2013-08-09 15:57:07 -07:00
Mitchell Hashimoto 97e4f1d180 up version for dev 2013-08-07 15:47:43 -07:00
Mitchell Hashimoto db5d34fd09 v0.2.3 2013-08-07 15:32:38 -07:00
Mitchell Hashimoto 7b400e8863 Update version for dev 2013-08-01 10:40:18 -07:00
Mitchell Hashimoto 4a176850fe v0.2.2 2013-08-01 10:29:19 -07:00
Mitchell Hashimoto 7bdb0c96f8 packer: fmt 2013-07-31 14:43:34 -07:00
Mitchell Hashimoto 08d2ac7815 packer: don't output colors if Windows and not Cygwin 2013-07-31 14:06:01 -07:00
Mitchell Hashimoto 00338a0b85 packer/plugin: trim whitespace on right of log data from plugin 2013-07-31 09:37:03 -07:00
Mitchell Hashimoto ae28778caf packer/plugin: flush os.Stderr whenever a plugin ends 2013-07-30 10:48:59 -07:00
Mitchell Hashimoto 69a5e83f47 packer/plugin: use chan struct{} for condition variable behavior 2013-07-30 10:43:43 -07:00
Mitchell Hashimoto 0dd4a4d83f packer/plugin: clean up stderr 2013-07-30 10:41:02 -07:00
Mitchell Hashimoto 52dbb3c423 packer/plugin: more stable stderr logging 2013-07-30 10:38:48 -07:00
Mitchell Hashimoto a380c1c91e packer: Use ch for condition variable
Thanks @titanous I didnt know this worked.
2013-07-29 13:20:57 -07:00
Mitchell Hashimoto 9b0c3b28c5 communicator/ssh: use SetExited 2013-07-29 12:12:42 -07:00
Mitchell Hashimoto 333ed6aa78 packer/rpc: Use the SetExited for remote communicators 2013-07-29 12:07:37 -07:00
Mitchell Hashimoto 26a117e36f packer: use locks/conds to avoid races on RemoteCmd.Exited [GH-42] 2013-07-29 12:04:58 -07:00
Mitchell Hashimoto 05ef4568e8 Up version for dev 2013-07-26 10:15:35 -07:00
Mitchell Hashimoto 71e30c60c9 v0.2.1 2013-07-26 09:54:05 -07:00
Mitchell Hashimoto 9289df6d35 packer/plugin: connect stdin to parent stdin 2013-07-25 21:24:49 -05:00
Mitchell Hashimoto 7472bbb17c packer: In the case of an error, close stdout/stderr writers 2013-07-23 22:46:51 -05:00
Mitchell Hashimoto 641c46451b packer: Preserve original stdout/stderr on StartWithUi
/cc @sit
2013-07-23 22:38:03 -05:00
Mitchell Hashimoto 425aaf2cea packer: RemoteCmd.StartWithUi thanks to @sit
I ended up working on this on my own outside your PR, sorry, but it is
basically the same as yours.
2013-07-23 22:35:05 -05:00
Mitchell Hashimoto 86ebfe0dc4 packer/rpc: remove unused test file 2013-07-23 13:45:35 -07:00
Mitchell Hashimoto 05f4efc6fb packer: Properly handle ? in URLs in cache keys
/cc @sit - Found another edge case
2013-07-20 19:20:29 -07:00
Mitchell Hashimoto 6072b05d3b packer: Extension works properly with URLs too
/cc @sit
2013-07-20 16:53:55 -07:00
Mitchell Hashimoto 1bd9288c5f packer: Use strings operations, faster than regexp and easy
/cc @sit
2013-07-20 16:50:18 -07:00
Emil Sit 594476ec91 packer/cache: Preserve any extension found on keys
This allows us to hand cache paths to any programs that may want to
interpret file extensions in order to behave differently. For
example, VirtualBox may want ISO images to end with .iso.
2013-07-20 00:19:05 -04:00
Emil Sit c5fe163352 packer/cache: Extract cache path calculation to method 2013-07-20 00:15:14 -04:00
Mitchell Hashimoto 16d102d055 builder/*: switch to MultiErrorAppend 2013-07-19 19:08:25 -04:00
Mitchell Hashimoto 9db2f2f676 packer: MultiErrorAppend helper method. 2013-07-19 18:14:50 -04:00
Mitchell Hashimoto ff7c51b5c5 packer: fix failing tests 2013-07-19 14:13:02 -04:00
Julian Phillips 40897fdfc2 packer/template: Remove name from builder rawConfig
This prevents the builder from rejecting the name (which it doesn't
know about) when validating the config.
2013-07-19 15:36:13 +01:00
Julian Phillips dee1bc6c67 packer/template: Test that builder.rawConfig excludes name
The name isn't actually part of the builder config, so it should be
removed during parsing.
2013-07-19 15:35:05 +01:00
Mitchell Hashimoto a179220a84 Up version for dev 2013-07-16 11:44:15 -07:00
Mitchell Hashimoto ce995d77a4 v0.2.0 2013-07-16 11:26:02 -07:00
Mitchell Hashimoto 9387ba0fd4 packer: Make builder type available in configs [GH-154] 2013-07-15 09:58:32 +09:00
Mitchell Hashimoto f621f88913 packer: move constants into a single const() 2013-07-15 09:55:41 +09:00
Mitchell Hashimoto afea628e2c Merge pull request #181 from qur/overrides
packer: Delete "override" key for config passed to provisioners
2013-07-14 17:22:01 -07:00
Mitchell Hashimoto c51ecbbc43 packer: Add failing test for [GH-181] to fix 2013-07-15 09:21:19 +09:00
Julian Phillips 13362ef209 Don't expose overrides directly to provisioners
The overrides are processed, so that the provisioner only sees the
appropriate sub-settings, so the provisioner does not need the raw
overrides.

If we leave the top-level overrides object in the provisioner
configuration, then it will be rejected as an unknown configuration
key.
2013-07-14 22:10:20 +01:00
Mitchell Hashimoto 0e9c0edade Error if unknown root level key in template [GH-180] 2013-07-14 10:29:14 +09:00
Mitchell Hashimoto 2981da4eef fmt 2013-07-13 10:01:27 +09:00
Jason A. Beranek 13c733a3db Add support for -force flag on builds [GH-119] 2013-07-11 23:43:23 -05:00
Mitchell Hashimoto c2236e9bfd packer: Only trim whitespace on the right of prefixed UI 2013-07-09 12:41:36 -07:00
Mitchell Hashimoto aef602d0e9 packer: only show git commit in version output for prerelease 2013-07-08 15:38:14 -07:00
Mitchell Hashimoto 45dfcf59c9 scripts: Add git commit to builds 2013-07-08 15:37:01 -07:00
Mitchell Hashimoto d52c43ed67 Up version for dev 2013-07-08 15:17:23 -07:00
Mitchell Hashimoto 71b81b41cf v0.1.5 2013-07-07 21:09:47 -07:00
Mitchell Hashimoto 97729e9893 packer/rpc: Properly close net.conn when remote process ends 2013-07-07 20:59:43 -07:00
Mitchell Hashimoto 2a7b371034 Up version for dev 2013-07-03 11:06:39 -07:00
Mitchell Hashimoto b869ce9b51 v0.1.4 2013-07-02 22:16:13 -07:00
Mitchell Hashimoto 7198936f7e packer: PrefixedUi properly prefixes each line of output 2013-07-02 12:28:25 -07:00
Mitchell Hashimoto 39095e48ea post-processor/vagrant: make output contain build name by default
[GH-92]
2013-07-01 15:07:09 -07:00
Mitchell Hashimoto 44e0a7def5 packer: Send packerConfig into PostProcessors 2013-07-01 15:00:21 -07:00
Mitchell Hashimoto 807896d63b packer: PostProcessor can take multiple configs 2013-07-01 14:59:23 -07:00
Mitchell Hashimoto 944d59afcd packer: extra comments on JSON syntax error calc 2013-07-01 14:47:49 -07:00
Mitchell Hashimoto cceb9c04b0 packer: Clean up some of the JSON syntax stuff 2013-07-01 14:46:32 -07:00