Commit Graph

134 Commits

Author SHA1 Message Date
Mitchell Hashimoto 47cd6df85b packer: Add Cancel method to Provisioner 2013-08-30 23:21:15 -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 5887472a6f packer/plugin: fix nil deref during ctrl-c of provisioner 2013-08-28 11:21:02 -07:00
Mitchell Hashimoto faeba2a14f packer/plugin: swallowInterrupts in plugin should swallow all 2013-08-23 14:22:32 -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 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 de1e94eb90 packer/plugin: set TCP keep-alive on connection 2013-08-19 16:25:00 -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 9289df6d35 packer/plugin: connect stdin to parent stdin 2013-07-25 21:24:49 -05:00
Mitchell Hashimoto 807896d63b packer: PostProcessor can take multiple configs 2013-07-01 14:59:23 -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 7d32b7f4b3 packer/plugin: Println should be Printf 2013-07-01 11:01:23 -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 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 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 76ab870924 packer: PostProcessor takes a UI [GH-20] 2013-06-18 20:38:21 -07:00
Mitchell Hashimoto 9b406a9010 packer/plugin: Support PostProcessor 2013-06-18 13:49:07 -07:00
Mitchell Hashimoto 540fac6454 Allow post-processors in the core configuration 2013-06-18 11:00:31 -07:00
Mitchell Hashimoto 9f5a247511 packer: Builders can take multiple configs 2013-06-14 12:27:50 -07:00
Mitchell Hashimoto 521b59a6fa Make everything support the new builder interface 2013-06-12 16:06:56 -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 62309cb6de Build/Builder take a Cache object now 2013-06-09 22:00:47 -07:00
Mitchell Hashimoto 0a6d8ed75a packer: Add errors to Prepare 2013-06-06 17:07:42 -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 12a9362f0a packer/plugin: Swallow interrupts in plugins 2013-06-03 22:31:54 -07:00
Mitchell Hashimoto 0ba80c88e8 packer/plugin: Implement Builder.Cancel 2013-06-03 15:31:28 -07:00
Mitchell Hashimoto 079d6f4d43 packer: Introduce Cancel() method to Builder 2013-06-03 14:44:34 -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 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 e9618b0d07 packer/plugin: Properly supports Artifacts 2013-05-21 22:16:26 -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 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 44bd56c3a8 go fmt 2013-05-10 17:01:24 -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 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 c5e83a4b15 packer/plugin: Client.Kill should only kill process if it is running 2013-05-08 14:51:56 -07:00
Mitchell Hashimoto 7dfeda350a packer/plugin: Properly log the max port 2013-05-08 13:45:57 -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 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 0cc3a5f918 packer/plugin: Much more robust subprocess starting 2013-05-05 16:25:32 -07:00
Mitchell Hashimoto 3370c55e2c Start packer/plugin. Big WiP 2013-05-04 21:26:30 -07:00