Commit Graph

479 Commits

Author SHA1 Message Date
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
Mitchell Hashimoto fdb0131ec5 Merge pull request #95 from markpeek/markpeek-jsonerror
packer: Provide line number for invalid json syntax [GH-56]
2013-07-01 14:38:01 -07:00
Mitchell Hashimoto e4dfcc9547 Up version for development 2013-07-01 14:37:43 -07:00
Mark Peek 2b8d6f3585 Provide line number for invalid json syntax [GH-56] 2013-07-01 13:30:08 -07:00
Mitchell Hashimoto 8a4106031a v0.1.3 2013-07-01 11:40:49 -07:00
Mitchell Hashimoto f78cbb45a6 packer: PostProcessor API change so they can keep artifacts [GH-55] 2013-07-01 11:30:39 -07:00
Mitchell Hashimoto 12f627197e fmt 2013-07-01 11:07:25 -07:00
Mitchell Hashimoto 8f74ff170d packer: Add BuildNameConfigKey to all configs which has the build name 2013-07-01 11:06:28 -07:00
Mitchell Hashimoto 7d32b7f4b3 packer/plugin: Println should be Printf 2013-07-01 11:01:23 -07:00
Mitchell Hashimoto e10ede6134 packer/rpc: Tests passing again 2013-07-01 10:45:51 -07:00
Mitchell Hashimoto b773e8decd packer/rpc: Listen on 127.0.0.1 specifically to avoid hangs 2013-07-01 09:39:34 -07:00
Mitchell Hashimoto 8f2340a04d Up version for development 2013-06-29 14:16:26 -07:00
Mitchell Hashimoto 3c816930e0 v0.1.2 2013-06-29 14:03:39 -07:00
Mitchell Hashimoto d180df0032 packer: Template requires builders 2013-06-29 14:02:20 -07:00
Mitchell Hashimoto 62cfa9983d packer/plugin: Assume any listen error is a port collision [GH-58] 2013-06-29 13:35:24 -07:00
Mitchell Hashimoto 5fb3f18427 Up version for dev 2013-06-29 12:26:15 -07:00
Mitchell Hashimoto aa3805c3fb v0.1.1 2013-06-28 22:41:30 -04:00
Mitchell Hashimoto 09862d9c2b packer/plugin: Bind to 127.0.0.1. Somehow fixes [GH-37] 2013-06-28 21:45:18 -04:00
Mitchell Hashimoto 2f84cd6ce7 packer/plugin: Extra logging statements 2013-06-28 16:01:49 -04:00
Mitchell Hashimoto 4abc599cd7 Up the version to 0.1.0 2013-06-28 10:33:16 -04:00
Mitchell Hashimoto 4cab266eb3 fmt 2013-06-28 09:44:03 -04:00
Mitchell Hashimoto bd6f176bf0 packer: Builds use their own UI [GH-21] 2013-06-27 21:55:59 -04:00
Mitchell Hashimoto 42005959fe packer: Don't run post-processors if artifact is nil 2013-06-27 18:50:02 -04:00
Mitchell Hashimoto e5a7fc6b0a packer: Provisioner/Hook can have errors returned 2013-06-26 17:50:25 -07:00
Mitchell Hashimoto 35e75ba0d2 packer/plugin: No need for a panic when plugins error 2013-06-25 14:30:08 -05:00
Mitchell Hashimoto df72fd0b0e packer/plugin: Require the magic cookie to be present to run
This is just a silly check to make sure people aren't executing
the plugins directly. If they are, a nicer error message is shown.
2013-06-25 14:27:20 -05:00
Mitchell Hashimoto 43b6c1fa89 packer: Ui.Message should Fprint, not Fprintf 2013-06-23 23:06:59 -07:00
Mitchell Hashimoto 957ebe9234 packer: Better docs for communicator interface 2013-06-20 14:46:25 -07:00
Mitchell Hashimoto ac088bee95 packer/rpc: Wrap errors in BasicError for RPC config errors 2013-06-20 12:55:11 -07:00
Mitchell Hashimoto 69f96aa3fa Begin work on the dist.sh script to create the distribution 2013-06-19 22:20:52 -07:00
Mitchell Hashimoto c6c04ef911 packer: Discard log output in tests 2013-06-18 23:18:21 -07:00
Mitchell Hashimoto 6799315081 packer: Improved logging around build runs 2013-06-18 23:05:02 -07:00
Mitchell Hashimoto b243eeda6f packer: Post-process chain works properly 2013-06-18 22:58:23 -07:00
Mitchell Hashimoto 4912b485e2 command/build: Say if no artifacts were created 2013-06-18 22:53:30 -07:00
Mitchell Hashimoto 154c17163b packer: keep_input_artifact will keep prior artifact in a PP
[GH-19]
2013-06-18 22:45:53 -07:00
Mitchell Hashimoto b98df11cbf fmt 2013-06-18 21:54:33 -07:00
Mitchell Hashimoto b34bc1a0c9 packer: Build only adds post-processor artifact if not nil 2013-06-18 21:15:14 -07:00
Mitchell Hashimoto 7217865797 packer/rpc: Convert any errors in configure to basic error 2013-06-18 21:04:33 -07:00
Mitchell Hashimoto 2e1b69ad39 packer/rpc: Environment.PostProcessor() properly sets thigns up 2013-06-18 20:54:40 -07:00
Mitchell Hashimoto 76ab870924 packer: PostProcessor takes a UI [GH-20] 2013-06-18 20:38:21 -07:00
Mitchell Hashimoto 75b2fab7b5 command/build, command/validate: Setup proper components to avoid nil 2013-06-18 16:29:29 -07:00
Mitchell Hashimoto b9fb065d27 packer: Add Destroy method to artifact
[GH-18]
2013-06-18 16:01:14 -07:00
Mitchell Hashimoto 9b406a9010 packer/plugin: Support PostProcessor 2013-06-18 13:49:07 -07:00
Mitchell Hashimoto d823d2550a packer/rpc: Support PostProcessor 2013-06-18 13:44:57 -07:00
Mitchell Hashimoto 540fac6454 Allow post-processors in the core configuration 2013-06-18 11:00:31 -07:00
Mitchell Hashimoto e73c224764 packer: Build runs the post-processors 2013-06-18 10:54:29 -07:00
Mitchell Hashimoto 75fe58d5f7 packer: Post-processors are configured 2013-06-18 10:31:52 -07:00
Mitchell Hashimoto 218692950b packer: Build can return multiple artifacts 2013-06-18 10:24:23 -07:00
Mitchell Hashimoto 9c89e33b5b packer/rpc: Get RPC compliant with Environment again 2013-06-18 10:05:45 -07:00
Mitchell Hashimoto d95f0a620a packer: builds now have post processors as part of them 2013-06-18 09:58:39 -07:00
Mitchell Hashimoto eee22b32f6 packer: Environment can look up post processors 2013-06-18 09:49:05 -07:00
Mitchell Hashimoto 57fef22429 packer: panic if Prepare called twice on build, lock 2013-06-18 09:37:49 -07:00
Mitchell Hashimoto e851ac5d26 packer: Avoid an extra allocation by using clever addressing 2013-06-18 09:30:23 -07:00
Mitchell Hashimoto 7a07802eb4 packer: Parse post-processors in templates
This includes parsing for the simple, detailed, and sequential
processors.
2013-06-18 09:27:08 -07:00
Mitchell Hashimoto 46108ce13f fmt 2013-06-17 15:19:33 -07:00
Mitchell Hashimoto dd89716ed5 packer: An initial PostProcessor interface 2013-06-17 11:56:26 -07:00