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
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