Commit Graph

652 Commits

Author SHA1 Message Date
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
Mitchell Hashimoto f4a5adf471 packer: Output a newline when interrupted for UI 2013-06-17 11:40:57 -07:00
Mitchell Hashimoto e0b05355c3 packer: If interrupted, Ask is disabled 2013-06-15 18:25:34 -07:00
Mitchell Hashimoto dc5d261994 packer: Ui can return an error for Ask, returns one for interrupt 2013-06-15 18:24:38 -07:00
Mitchell Hashimoto a73e71c37f packer/rpc: Panic in error case 2013-06-15 11:27:09 -07:00
Mitchell Hashimoto 67eaa07cf4 packer: Get rid of "name" in template, wasn't used for anything 2013-06-15 11:14:44 -07:00
Mitchell Hashimoto 22e7345148 packer: Ui requires input for Ctrl-C 2013-06-14 17:37:38 -07:00
Mitchell Hashimoto ea01d7b2c6 fmt 2013-06-14 16:00:16 -07:00
Mitchell Hashimoto 9a69b21025 packer: Ui.Ask quits during interrupt 2013-06-14 15:59:54 -07:00
Mitchell Hashimoto 21b6d2a435 builder/common: multistep debug fn gracefully exits during an interrupt 2013-06-14 15:47:06 -07:00
Mitchell Hashimoto e0f2bcf8a2 packer: Add "Ask" method to Ui to ask for input 2013-06-14 15:17:03 -07:00
Mitchell Hashimoto cbd3f59578 builder/vmware: Enable the debug runner 2013-06-14 15:07:34 -07:00
Mitchell Hashimoto 8217e64a8d packer: Set DebugConfigKey to true if debug is on 2013-06-14 12:38:54 -07:00
Mitchell Hashimoto fd044982d9 packer: Additional comments 2013-06-14 12:32:14 -07:00
Mitchell Hashimoto 9f5a247511 packer: Builders can take multiple configs 2013-06-14 12:27:50 -07:00
Mitchell Hashimoto a45c7fb0ea packer: Add SetDebug to Build objects 2013-06-14 12:22:19 -07:00
Mitchell Hashimoto e00a30e729 packer: Comments on Build interface 2013-06-14 12:15:51 -07:00
Mitchell Hashimoto a35feebe70 packer: Build no longer takes Ui for Prepare 2013-06-13 10:08:31 -07:00
Mitchell Hashimoto 521b59a6fa Make everything support the new builder interface 2013-06-12 16:06:56 -07:00
Mitchell Hashimoto 12cc8e98aa packer/rpc: less panics, more returning errors 2013-06-12 16:02:07 -07:00
Mitchell Hashimoto d2023c69be packer/rpc: returning errors from builds works properly 2013-06-12 16:01:42 -07:00
Mitchell Hashimoto db8aeaba40 packer, packer/rpc: Build/builders can return errors now 2013-06-12 15:58:02 -07:00
Mitchell Hashimoto 0f98852d4d packer: Ui error output is red 2013-06-12 10:41:58 -07:00
Mitchell Hashimoto 417f7e7f47 fmt 2013-06-11 14:09:31 -07:00
Mitchell Hashimoto de14dffd36 packer/plugin: Set the RPC port range to the plugin port range 2013-06-11 11:14:36 -07:00
Mitchell Hashimoto 9162819daf packer/plugin: Avoid lexical scoping issues with cleaning up clients 2013-06-11 11:10:08 -07:00
Mitchell Hashimoto e904705a49 packer uses the new plugin client API 2013-06-11 11:06:23 -07:00
Mitchell Hashimoto 88d508893d packer/plugin: client to Client so it can be used outside 2013-06-11 11:03:36 -07:00
Mitchell Hashimoto 7fe98e50fe packer/plugin: Refactor to get interfaces from Client 2013-06-11 11:00:06 -07:00
Mitchell Hashimoto 250cb0106b packer/plugin: Only allow client start once, lock 2013-06-11 10:43:55 -07:00
Mitchell Hashimoto fb2ffde29e packer/plugin: Refactor the client for the API to be more uniform 2013-06-11 10:39:06 -07:00
Mitchell Hashimoto e2214106ee packer: Cache keys should be hex encoded to string 2013-06-09 23:06:47 -07:00
Mitchell Hashimoto 7b0000cd4c packer: Actually return if prepare of a build fails 2013-06-09 23:05:11 -07:00
Mitchell Hashimoto 62309cb6de Build/Builder take a Cache object now 2013-06-09 22:00:47 -07:00
Mitchell Hashimoto 5307e5391c fmt 2013-06-09 21:19:26 -07:00
Mitchell Hashimoto f2c8b994a0 packer: Default cache is just to os temporary dir 2013-06-09 21:18:06 -07:00
Mitchell Hashimoto edaf19199f packer: Environment has Cache method, RPC implements 2013-06-09 21:09:09 -07:00
Mitchell Hashimoto 2c8b198049 packer/rpc: Support Cache interface 2013-06-09 19:25:48 -07:00
Mitchell Hashimoto 7968068a3a packer: Add FileCache and Cache 2013-06-09 19:01:28 -07:00
Mitchell Hashimoto d55bf3f3ec packer: Support overrides in provisioners for each build 2013-06-07 10:35:26 -07:00
Mitchell Hashimoto 5638cecd14 packer: Use mapstructure for templates, save lots of lines 2013-06-07 10:23:15 -07:00
Mitchell Hashimoto 4a8278d49b provisioner/shell: Support setting the execute command 2013-06-06 23:14:31 -07:00
Mitchell Hashimoto 4531922ec3 packer: Return the provisioner prepare errors if they occurred 2013-06-06 17:09:51 -07:00
Mitchell Hashimoto 0a6d8ed75a packer: Add errors to Prepare 2013-06-06 17:07:42 -07:00
Mitchell Hashimoto 09f5cd5090 packer: Update doc on Provisioner 2013-06-06 17:02:02 -07:00
Mitchell Hashimoto 6b87c42ee6 packer: Change provisioner interface to take array of configs 2013-06-06 17:01:12 -07:00
Mitchell Hashimoto 34f4086963 packer/plugin: Preserve parent ENV when executing client 2013-06-05 20:39:39 -07:00
Mitchell Hashimoto dd4fb1d62a packer/plugin: Explicitly set GOMAXPROCS to # of cpus 2013-06-05 17:39:27 -07:00
Mitchell Hashimoto 9bb24e6d90 packer/rpc: Return proper nil artifact if nil is returned 2013-06-05 15:36:26 -07:00
Mitchell Hashimoto 334fd4e154 packer/rpc: Register []interface{} so arrays can be sent over wire 2013-06-05 15:16:41 -07:00
Mitchell Hashimoto 5c39a2f7ca fmt 2013-06-03 22:32:04 -07:00
Mitchell Hashimoto 12a9362f0a packer/plugin: Swallow interrupts in plugins 2013-06-03 22:31:54 -07:00
Mitchell Hashimoto 94cfe39a76 packer: coreBuild.Cancel calls the builder Cancel method 2013-06-03 16:06:04 -07:00
Mitchell Hashimoto 30a061a855 packer: Build.Cancel 2013-06-03 16:03:08 -07:00
Mitchell Hashimoto 0ba80c88e8 packer/plugin: Implement Builder.Cancel 2013-06-03 15:31:28 -07:00
Mitchell Hashimoto e06c26c55c packer/rpc: Implement Builder.Cancel 2013-06-03 15:30:09 -07:00
Mitchell Hashimoto 1b557d7710 packer/rpc: Builder.Run() no longer blocks RPC connection 2013-06-03 15:00:35 -07:00
Mitchell Hashimoto 079d6f4d43 packer: Introduce Cancel() method to Builder 2013-06-03 14:44:34 -07:00
Mitchell Hashimoto e21d389fd2 packer: Fixin bugs in PrefixUi calling the wrong method 2013-06-03 13:54:28 -07:00
Mitchell Hashimoto 3e1b10c09e packer: ColoredUi bolds, but doesn't bold messages 2013-06-03 13:49:59 -07:00
Mitchell Hashimoto f041ebb2fd packer: ColoredUi 2013-06-03 13:35:43 -07:00
Mitchell Hashimoto edab952a68 packer: Add Message method to Ui 2013-06-03 11:30:38 -07:00
Mitchell Hashimoto bbc5f305e2 packer: RemoteCmd.Wait 2013-06-03 10:49:23 -07:00
Mitchell Hashimoto 75074ca92d go fmt 2013-06-02 23:27:18 -07:00
Mitchell Hashimoto a21fe8c484 packer/rpc: Exited fields now work over RPC 2013-06-02 23:21:55 -07:00
Mitchell Hashimoto ea4171f163 packer/rpc: Hook up the new communicator interface 2013-06-02 23:08:40 -07:00
Mitchell Hashimoto 532faec457 packer: New Communicator interface is much simplified 2013-06-02 21:20:27 -07:00
Mitchell Hashimoto 74d812a766 packer: Much smarter CLI 2013-06-02 15:03:02 -07:00
Mitchell Hashimoto fcd866731b packer: Remove extra newline on version 2013-06-02 11:52:49 -07:00
Mitchell Hashimoto aa1304f860 packer: Print command help if "--help" is given 2013-06-02 11:49:01 -07:00
Mitchell Hashimoto bbafcfa938 packer, etc: added Help method to Command interface
This will be used for long-form help when "packer help foo"
or "packer foo --help" is called.
2013-06-02 11:41:12 -07:00
Mitchell Hashimoto e629eef97a packer/plugin: Start testing the client 2013-06-01 19:35:19 -07:00
Mitchell Hashimoto 45c590f413 packer: Fix help output for packer, excessive newlines 2013-06-01 19:15:32 -07:00
Mitchell Hashimoto ade3795123 packer: RemoteCommand.StderrChan 2013-06-01 18:49:49 -07:00
Mitchell Hashimoto e753ffe5d9 packer: Refactor on StdoutChan so it'll work for stderr easily 2013-06-01 18:31:22 -07:00
Mitchell Hashimoto 810d17c0ef packer: RemoteCommand.StdoutChan works + tests 2013-06-01 18:21:27 -07:00
Mitchell Hashimoto ace53450b9 packer: More efficient RemoteCommand.ExitChan 2013-06-01 17:57:26 -07:00
Mitchell Hashimoto c6dd54760c Get everything compiling again 2013-06-01 17:48:19 -07:00
Mitchell Hashimoto 8034e91ca3 packer: Lock in RemoteCommand.ExitChan 2013-06-01 17:45:57 -07:00
Mitchell Hashimoto 24237da32c packer: RemoteCommand.ExitChan() and tests 2013-05-28 18:12:15 -07:00
Mitchell Hashimoto 97ba152771 packer: tests for RemoteCommand.Wait 2013-05-28 18:02:14 -07:00
Mitchell Hashimoto 7154b5c0f1 packer/rpc: Close the net conn after done sending data for Comm 2013-05-27 23:36:34 -07:00
Mitchell Hashimoto 78ab1709cd packer/rpc: Better logging in communicator 2013-05-27 22:10:44 -07:00
Mitchell Hashimoto 2788d29bd1 packer, packer/rpc: Update Ui to just take a message 2013-05-27 15:12:48 -07:00
Mitchell Hashimoto 84891701bd go fmt 2013-05-23 21:59:03 -07:00
Mitchell Hashimoto 37372bac93 packer/plugin: Support provisioners 2013-05-23 21:37:16 -07:00
Mitchell Hashimoto 1b78fc88a9 packer: coreBuild runs provisioners as part of Run 2013-05-23 21:26:24 -07:00
Mitchell Hashimoto 83eab87c26 packer: TODO item 2013-05-23 21:13:40 -07:00
Mitchell Hashimoto 812722c20d packer: ProvisionHook 2013-05-23 21:13:18 -07:00
Mitchell Hashimoto 73b7d94933 packer: better commenting 2013-05-22 17:06:06 -07:00
Mitchell Hashimoto e69e74b2dc packer: Panic if provisioners and no provisioner function 2013-05-22 17:05:36 -07:00
Mitchell Hashimoto 3d0dde03e6 packer: Panic on template if no builder function 2013-05-22 17:02:34 -07:00
Mitchell Hashimoto 534f32067a packer: Test that hooks are callable from builds 2013-05-22 16:46:23 -07:00
Mitchell Hashimoto 0f57370dec packer: Prepare provisioners as part of Build prepare 2013-05-22 16:29:07 -07:00
Mitchell Hashimoto cb91ca72ac packer: Build.Prepare takes a UI 2013-05-22 16:20:40 -07:00
Mitchell Hashimoto fbcc6cb2b2 packer: Build now has provisioners, template parses and builds 2013-05-22 16:15:57 -07:00
Mitchell Hashimoto 11d46a3a2c packer: ProvisionerFunc 2013-05-22 15:39:30 -07:00
Mitchell Hashimoto 92a4f27868 packer/rpc: Support provisioners 2013-05-22 15:35:52 -07:00
Mitchell Hashimoto 638e191186 packer: Parse provisioners out of template 2013-05-22 15:12:43 -07:00
Mitchell Hashimoto 06b0cebd1e packer: Template properly calls builder type builderType 2013-05-22 14:39:32 -07:00
Mitchell Hashimoto 4bd7db0759 go fmt 2013-05-22 14:36:33 -07:00
Mitchell Hashimoto 8273565255 better comments for TODO 2013-05-22 14:36:21 -07:00
Mitchell Hashimoto c51223bab7 packer: Template parsing error if name/type is not string 2013-05-22 14:14:40 -07:00
Mitchell Hashimoto f9c59c714f packer: Better error handling for template parsing 2013-05-22 14:11:34 -07:00
Mitchell Hashimoto 615f993de2 packer: MultiError to represent multiple errors 2013-05-22 13:36:09 -07:00
Mitchell Hashimoto c4522a6265 packer: Provisioner interface 2013-05-22 13:25:03 -07:00
Mitchell Hashimoto 41a7fd45b9 packer: Return artifact from build 2013-05-21 22:38:41 -07:00
Mitchell Hashimoto e9618b0d07 packer/plugin: Properly supports Artifacts 2013-05-21 22:16:26 -07:00
Mitchell Hashimoto caa2b7711b packer/rpc: Builders return valid artifacts 2013-05-21 22:14:58 -07:00
Mitchell Hashimoto 53c3d330e4 packer/rpc: Support Artifacts 2013-05-21 22:10:21 -07:00
Mitchell Hashimoto 55d9cd2124 packer: First pass at Artifact interface 2013-05-21 21:53:16 -07:00
Mitchell Hashimoto 2c4a873a5f packer: Add PrefixedUi 2013-05-21 13:20:51 -07:00
Mitchell Hashimoto cc4970d424 packer/rpc: Allow "error" interfaces to be sent over RPC 2013-05-21 11:58:14 -07:00
Mitchell Hashimoto 8dfe78dd19 packer: Log UI output 2013-05-21 11:40:07 -07:00
Mitchell Hashimoto 4453fda2e8 go fmt 2013-05-21 00:56:27 -07:00
Mitchell Hashimoto 559777e5b7 packer: Ui automatically appends newline 2013-05-20 23:43:37 -07:00
Mitchell Hashimoto 15f215d04f go fmt 2013-05-20 16:50:35 -07:00
Mitchell Hashimoto 7475ee8377 packer: Add Communicator to Hook arguments 2013-05-12 17:30:30 -07:00
Mitchell Hashimoto 7fdb53f5d1 packer: Test to make sure DispatchHook implements Hook 2013-05-12 17:15:03 -07:00
Mitchell Hashimoto f74341a7b9 packer/rpc: Complete Upload/Download implementation 2013-05-12 17:09:14 -07:00
Mitchell Hashimoto 9262a85e6c packer/rpc: Communicator.Upload 2013-05-12 16:48:46 -07:00
Mitchell Hashimoto daa431af63 packer: Communicator Upload/Download return an error 2013-05-12 16:25:40 -07:00
Mitchell Hashimoto 496a320a82 packer/rpc: Implement full communicator interface 2013-05-12 16:19:34 -07:00
Mitchell Hashimoto 2799cccf4b packer: Waiting for a remote command and setting the exit status 2013-05-12 16:18:17 -07:00
Mitchell Hashimoto 88a018bf5d packer: Work on communicators... WIP 2013-05-12 14:47:55 -07:00
Mitchell Hashimoto a2bf964f30 packer/rpc: Properly support hooks 2013-05-11 11:11:40 -07:00
Mitchell Hashimoto cb1e0cbabf packer/plugin: Support hooks 2013-05-11 10:46:17 -07:00
Mitchell Hashimoto d926b98708 Update all packer/rpc, packer/plugin, builders for new builder API 2013-05-11 10:31:30 -07:00
Mitchell Hashimoto 441edd25d2 packer: Changes to build parameters and DispatchHook 2013-05-11 10:27:07 -07:00
Mitchell Hashimoto 25fd2fe877 packer: Template looks up hooks and adds them to the build 2013-05-11 10:00:37 -07:00
Mitchell Hashimoto 779f489894 packer: Template takes a component finder 2013-05-11 09:56:42 -07:00
Mitchell Hashimoto 30ab944437 packer/rpc: Support Hooks 2013-05-11 09:51:49 -07:00
Mitchell Hashimoto 8ed313e7b5 packer: Add concept of hooks to Environment 2013-05-10 23:15:13 -07:00
Mitchell Hashimoto 5ac06e116e packer: Parse "hooks" configuration into the Template 2013-05-10 22:47:20 -07:00
Mitchell Hashimoto 44bd56c3a8 go fmt 2013-05-10 17:01:24 -07:00
Mitchell Hashimoto 368ccab8e8 packer: Put Builder definition into its own file 2013-05-10 16:59:28 -07:00
Mitchell Hashimoto 208daf7d03 packer: Hook interface, not hooked up yet 2013-05-10 16:58:50 -07:00
Mitchell Hashimoto de03e97643 packer: More comments/docs 2013-05-10 16:41:35 -07:00
Mitchell Hashimoto 077f15bdfb packer/plugin: Docs 2013-05-09 14:27:20 -07:00
Mitchell Hashimoto c580faa1a5 packer/rpc: error interface wrapper to RPC errors around 2013-05-09 13:59:33 -07:00
Mitchell Hashimoto 6d4136c5ab packer/plugin: Add plugin path to the log messages 2013-05-09 13:29:14 -07:00
Mitchell Hashimoto 44c61e537d Some additional logging 2013-05-09 13:26:40 -07:00
Mitchell Hashimoto 9600bf5b4b packer: Build.Name 2013-05-09 11:32:03 -07:00
Mitchell Hashimoto 587d359887 packer: Builder.Prepare can return an error 2013-05-09 10:54:42 -07:00
Mitchell Hashimoto c164b4c23c packer/plugin: Actually try more ports for plugins 2013-05-08 22:25:47 -07:00
Mitchell Hashimoto cce59af2e8 Support builders in config, packer/rpc, packer/plugin 2013-05-08 21:05:35 -07:00
Mitchell Hashimoto 8ffbc2efe7 packer: Start pulling out the global config stuff 2013-05-08 17:28:05 -07:00
Mitchell Hashimoto 8a78de02c7 packer: Cleaner way to build up a list of names 2013-05-08 17:11:02 -07:00
Mitchell Hashimoto 198f984b92 packer: error if UI fails 2013-05-08 17:09:10 -07:00
Mitchell Hashimoto fd2d8480e1 Lots more logging everywhere 2013-05-08 16:59:36 -07:00
Mitchell Hashimoto 95153413a6 packer: Ui has Error method 2013-05-08 15:12:48 -07:00
Mitchell Hashimoto a803af7016 Move the build command into the actual build command 2013-05-08 14:58:06 -07:00
Mitchell Hashimoto c5e83a4b15 packer/plugin: Client.Kill should only kill process if it is running 2013-05-08 14:51:56 -07:00
Mitchell Hashimoto 947209a028 packer: PACKER_LOG to toggle logging from an env var [GH-3] 2013-05-08 14:45:17 -07:00
Mitchell Hashimoto 7dfeda350a packer/plugin: Properly log the max port 2013-05-08 13:45:57 -07:00
Mitchell Hashimoto 88f7b33082 packer/rpc: Rename Command to follow RPC style 2013-05-08 13:42:25 -07:00
Mitchell Hashimoto ac83cf652a packer/rpc: Setup the Environment properly for Command 2013-05-08 13:11:47 -07:00
Mitchell Hashimoto abb51ebb35 packer/plugin: Don't wrap bytesBuffer in bufio, fixes GH-10 2013-05-08 13:02:21 -07:00
Mitchell Hashimoto 286f0aa91c More logging, some tweaks to the format 2013-05-08 12:43:41 -07:00
Mitchell Hashimoto 26a998f721 packer/plugin: Managed clients for automatic cleanup 2013-05-08 11:54:59 -07:00
Mitchell Hashimoto c8079a4290 packer/plugin: client kill waits for logging to complete 2013-05-08 11:23:24 -07:00
Mitchell Hashimoto e1785e424e packer/plugin: client to encapsulate logic for starting plugins 2013-05-08 11:14:21 -07:00
Mitchell Hashimoto 4d9b5fa86d packer/plugin: Better command logging, but not good enough yet 2013-05-08 10:52:23 -07:00
Mitchell Hashimoto 8a32494e3f Start working on logging across the board 2013-05-08 09:46:37 -07:00
Mitchell Hashimoto cbab761ab1 packer: Environment.Cli error tests 2013-05-07 20:50:22 -07:00
Mitchell Hashimoto de444867d3 packer: Tests for the Builder error cases 2013-05-07 20:47:56 -07:00
Mitchell Hashimoto 869732826b packer, packer/rpc: Make command/builderFunc support errors 2013-05-07 20:42:49 -07:00
Mitchell Hashimoto fbc2013b8c packer/plugin: Documentation 2013-05-07 19:50:34 -07:00
Mitchell Hashimoto 70d378b936 packer/plugin: Better command cleanup 2013-05-07 19:48:14 -07:00
Mitchell Hashimoto 68a024b59a packer/plugin: Make sure subprocess properly dies if error 2013-05-07 19:47:32 -07:00
Mitchell Hashimoto 2ff1fabbf9 packer/plugin: timeout when starting a plugin 2013-05-07 19:39:20 -07:00
Mitchell Hashimoto c9c294f136 packer/plugin: More robust command exit detection + tests 2013-05-07 17:10:45 -07:00
Mitchell Hashimoto 9219a19f61 packer/plugin: Better error handling around command exit cases 2013-05-07 17:02:55 -07:00
Mitchell Hashimoto ff23b67929 packer/plugin: error if command can't start 2013-05-07 14:05:51 -07:00
Mitchell Hashimoto 04563764a0 `packer build` now communicates through RPC! 2013-05-07 11:50:42 -07:00
Mitchell Hashimoto e9278cc0bd packer/plugin: Randomly generate port to run on 2013-05-06 15:27:44 -07:00
Mitchell Hashimoto b9e3eb1ff7 packer/rpc: Get rid of the heavy server stuff 2013-05-05 17:38:50 -07:00
Mitchell Hashimoto 0cc3a5f918 packer/plugin: Much more robust subprocess starting 2013-05-05 16:25:32 -07:00
Mitchell Hashimoto 86f1fbe925 packer/rpc: Support the new Builder func on Environment 2013-05-05 15:12:55 -07:00
Mitchell Hashimoto a6aafde00e packer/rpc: tests green from new BuilderFactory changes 2013-05-05 14:50:27 -07:00
Mitchell Hashimoto 14c568a9d2 Get rid of BuilderFactory 2013-05-05 14:47:17 -07:00
Mitchell Hashimoto 3370c55e2c Start packer/plugin. Big WiP 2013-05-04 21:26:30 -07:00
Mitchell Hashimoto 01405c864b packer/rpc: Use the proper Server for tests 2013-05-04 19:59:42 -07:00
Mitchell Hashimoto 5aec3f6745 packer/rpc: Remote environments 2013-05-04 15:58:42 -07:00
Mitchell Hashimoto 255b94761c packer/rpc: Test BuilderFactory result works. Close back RPC after one
conn
2013-05-04 15:33:36 -07:00
Mitchell Hashimoto 5aebe7b149 packer/rpc: BuilderFactory remote 2013-05-04 15:29:00 -07:00
Mitchell Hashimoto 8a78d4d8a5 packer/rpc: Test Builder.Run 2013-05-04 13:50:02 -07:00
Mitchell Hashimoto c537c304cb Remote builders 2013-05-04 13:47:11 -07:00
Mitchell Hashimoto 68341e6e8a Test regisering a UI with the server 2013-05-04 13:36:56 -07:00
Mitchell Hashimoto 720bb0c297 Better comments 2013-05-04 13:32:02 -07:00
Mitchell Hashimoto 03ff35d6a0 Server tests 2013-05-04 13:31:07 -07:00
Mitchell Hashimoto 22549b0388 Fix race condition issue where listner could become nil 2013-05-04 13:29:45 -07:00
Mitchell Hashimoto 5007b240dc Server opens a port in the given range 2013-05-04 13:23:28 -07:00
Mitchell Hashimoto dbe5360262 Ability to get a net listener in a given port range 2013-05-04 13:17:22 -07:00
Mitchell Hashimoto f0a09ffa6b Crazy things with RPC servers and stuff 2013-05-03 23:55:08 -07:00
Mitchell Hashimoto 0985d26167 Make Build an interface 2013-05-03 20:45:38 -07:00
Mitchell Hashimoto 8dea720627 rpc.Ui 2013-05-03 15:49:15 -07:00
Mitchell Hashimoto 94cdedf40f Move RPC stuff into a new "packer/rpc" package 2013-05-03 14:26:21 -07:00
Mitchell Hashimoto b1993dc24d Test that coreEnvironment can't encode/decode 2013-05-02 15:36:30 -07:00
Mitchell Hashimoto 575489fa78 RPC commands and some basic tests for this [GH-1] 2013-05-02 15:20:12 -07:00
Mitchell Hashimoto 520503e10c Turn Environment into an interface 2013-05-02 14:03:55 -07:00
Mitchell Hashimoto fefd2ae208 Separate commands into other directories 2013-04-21 19:04:35 -07:00
Mitchell Hashimoto f49c0cb313 Pull out Command interface out into separate file 2013-04-21 18:45:44 -07:00
Mitchell Hashimoto 262d8aa9a8 Template can create Builds 2013-04-21 12:36:55 -07:00
Mitchell Hashimoto 8f08c5d8a2 Require Prepare to be called on Build 2013-04-20 20:03:53 -06:00
Mitchell Hashimoto f579ff05f2 Initial work on Build 2013-04-20 19:55:02 -06:00
Mitchell Hashimoto 05e254a2ff BuilderFactory getter on Environment 2013-04-20 19:31:42 -06:00
Mitchell Hashimoto f4ea172178 NilBuilderFactory 2013-04-20 19:08:10 -06:00
Mitchell Hashimoto 116442510b Require configuration to create Environment 2013-04-20 19:00:03 -06:00
Mitchell Hashimoto 12049e3d87 Some documentation 2013-04-20 18:33:27 -06:00
Mitchell Hashimoto f21db281c2 better testing of the help printing on CLIs 2013-04-20 18:30:09 -06:00
Mitchell Hashimoto 109be6b5e3 Better testing of CLI 2013-04-20 18:22:27 -06:00
Mitchell Hashimoto a8853da063 Test the CLI that Run is called on custom commands 2013-04-20 18:17:53 -06:00
Mitchell Hashimoto 216d5cb0d1 Fix tests 2013-04-20 18:09:54 -06:00
Mitchell Hashimoto 0de922d14a Make environment config export variables 2013-04-20 18:08:43 -06:00
Mitchell Hashimoto 2e1b50769f Just some types and their documentation 2013-04-20 18:05:27 -06:00
Mitchell Hashimoto 37bd1cd308 Test setting the UI for tests 2013-04-15 20:26:38 -07:00
Mitchell Hashimoto 4eb8ac80c2 Ability to get a builder from the env 2013-04-15 19:53:29 -07:00
Mitchell Hashimoto 6bed06e01c Lots of template parsing stuff 2013-04-15 17:04:19 -07:00
Mitchell Hashimoto 298a7cdbe4 Basic template parsing, tests, build command progress 2013-04-15 15:48:42 -07:00
Mitchell Hashimoto 49256895cc CLI calls should slice the first arg out before running 2013-04-15 15:03:41 -07:00
Mitchell Hashimoto 8c5b695de7 Initial build command 2013-04-15 14:36:23 -07:00
Mitchell Hashimoto 759261dcf1 Bad commit message 2013-03-25 16:29:26 -07:00
Mitchell Hashimoto bde32e964f Alphabetize 2013-03-24 16:41:58 -07:00
Mitchell Hashimoto b25bf0c0c9 Format 2013-03-24 16:36:02 -07:00
Mitchell Hashimoto f6919cf18b Short-circuit -h and --help to printing help for the top-level cmd 2013-03-24 16:35:33 -07:00
Mitchell Hashimoto 4d10489f51 Implement the help method 2013-03-24 16:28:35 -07:00
Mitchell Hashimoto 91c524c7ec More environment testing 2013-03-24 14:47:59 -07:00
Mitchell Hashimoto ca93f645be packer.Ui tests 2013-03-24 14:31:18 -07:00
Mitchell Hashimoto db1c11fff5 Lots of stuff, too early for meaningful commit messages
UI, command dispatch
2013-03-24 14:03:53 -07:00