diff --git a/website/Gemfile b/website/Gemfile index d270a5ae4..2b3a472d5 100644 --- a/website/Gemfile +++ b/website/Gemfile @@ -2,11 +2,11 @@ source 'https://rubygems.org' ruby '1.9.3' -gem "middleman", "~> 3.0.6" -gem "middleman-minify-html", "~> 3.0.0" +gem "middleman", "~> 3.1.5" +gem "middleman-minify-html", "~> 3.1.1" gem "rack-contrib", "~> 1.1.0" -gem "redcarpet", "~> 2.2.2" -gem "therubyracer", "~> 0.10.2" +gem "redcarpet", "~> 3.0.0" +gem "therubyracer", "~> 0.12.0" gem "thin", "~> 1.5.0" group :development do diff --git a/website/Gemfile.lock b/website/Gemfile.lock index d79220dde..a25bfa939 100644 --- a/website/Gemfile.lock +++ b/website/Gemfile.lock @@ -1,134 +1,109 @@ GEM remote: https://rubygems.org/ specs: - POpen4 (0.1.4) - Platform (>= 0.4.0) - open4 - Platform (0.4.0) - activesupport (3.2.9) - i18n (~> 0.6) + activesupport (3.2.14) + i18n (~> 0.6, >= 0.6.4) multi_json (~> 1.0) - chunky_png (1.2.6) + chunky_png (1.2.8) coffee-script (2.2.0) coffee-script-source execjs - coffee-script-source (1.3.3) + coffee-script-source (1.6.3) compass (0.12.2) chunky_png (~> 1.2) fssm (>= 0.2.7) sass (~> 3.1) daemons (1.1.9) - eventmachine (1.0.0) + eventmachine (1.0.3) execjs (1.4.0) multi_json (~> 1.0) - ffi (1.2.0) - fssm (0.2.9) - haml (3.1.7) - highline (1.6.15) - hike (1.2.1) - htmlcompressor (0.0.3) - yui-compressor (~> 0.9.6) - http_router (0.10.2) - rack (>= 1.0.0) - url_mount (~> 0.2.1) - i18n (0.6.1) - libv8 (3.3.10.4) - listen (0.5.3) - maruku (0.6.1) - syntax (>= 1.0.0) - middleman (3.0.6) - middleman-core (= 3.0.6) - middleman-more (= 3.0.6) - middleman-sprockets (~> 3.0.2) - middleman-core (3.0.6) - activesupport (~> 3.2.6) - bundler (~> 1.1) - listen (~> 0.5.2) - rack (~> 1.4.1) - rack-test (~> 0.6.1) - rb-fsevent (~> 0.9.1) - rb-inotify (~> 0.8.8) - thor (~> 0.15.4) - tilt (~> 1.3.1) - middleman-minify-html (3.0.0) - htmlcompressor - middleman-core (~> 3.0.0) - middleman-more (3.0.6) + ffi (1.9.0) + fssm (0.2.10) + haml (4.0.3) + tilt + highline (1.6.19) + hike (1.2.3) + i18n (0.6.5) + kramdown (1.1.0) + libv8 (3.16.14.3) + listen (1.2.3) + rb-fsevent (>= 0.9.3) + rb-inotify (>= 0.9) + rb-kqueue (>= 0.2) + middleman (3.1.5) coffee-script (~> 2.2.0) - coffee-script-source (~> 1.3.3) compass (>= 0.12.2) execjs (~> 1.4.0) haml (>= 3.1.6) - i18n (~> 0.6.0) - maruku (~> 0.6.0) - middleman-core (= 3.0.6) - padrino-helpers (= 0.10.7) + kramdown (~> 1.1.0) + middleman-core (= 3.1.5) + middleman-more (= 3.1.5) + middleman-sprockets (>= 3.1.2) sass (>= 3.1.20) - uglifier (~> 1.2.6) - middleman-sprockets (3.0.4) - middleman-more (~> 3.0.1) - sprockets (~> 2.1, < 2.5) - sprockets-sass (~> 0.8.0) - multi_json (1.4.0) - open4 (1.3.0) - padrino-core (0.10.7) - activesupport (~> 3.2.0) - http_router (~> 0.10.2) - sinatra (~> 1.3.1) - thor (~> 0.15.2) - tilt (~> 1.3.0) - padrino-helpers (0.10.7) - i18n (~> 0.6) - padrino-core (= 0.10.7) - rack (1.4.1) + uglifier (~> 2.1.0) + middleman-core (3.1.5) + activesupport (~> 3.2.6) + bundler (~> 1.1) + i18n (~> 0.6.1) + listen (~> 1.2.2) + rack (>= 1.4.5) + rack-test (~> 0.6.1) + thor (>= 0.15.2, < 2.0) + tilt (~> 1.3.6) + middleman-minify-html (3.1.1) + middleman-core (~> 3.0) + middleman-more (3.1.5) + middleman-sprockets (3.1.4) + middleman-core (>= 3.0.14) + middleman-more (>= 3.0.14) + sprockets (~> 2.1) + sprockets-helpers (~> 1.0.0) + sprockets-sass (~> 1.0.0) + multi_json (1.8.0) + rack (1.5.2) rack-contrib (1.1.0) rack (>= 0.9.1) - rack-protection (1.2.0) - rack rack-test (0.6.2) rack (>= 1.0) - rb-fsevent (0.9.2) - rb-inotify (0.8.8) + rb-fsevent (0.9.3) + rb-inotify (0.9.2) ffi (>= 0.5.0) - redcarpet (2.2.2) - sass (3.2.3) - sinatra (1.3.3) - rack (~> 1.3, >= 1.3.6) - rack-protection (~> 1.2) - tilt (~> 1.3, >= 1.3.3) - sprockets (2.4.5) + rb-kqueue (0.2.0) + ffi (>= 0.5.0) + redcarpet (3.0.0) + ref (1.0.5) + sass (3.2.10) + sprockets (2.10.0) hike (~> 1.2) multi_json (~> 1.0) rack (~> 1.0) tilt (~> 1.1, != 1.3.0) - sprockets-sass (0.8.0) + sprockets-helpers (1.0.1) + sprockets (~> 2.0) + sprockets-sass (1.0.1) sprockets (~> 2.0) tilt (~> 1.1) - syntax (1.0.0) - therubyracer (0.10.2) - libv8 (~> 3.3.10) - thin (1.5.0) + therubyracer (0.12.0) + libv8 (~> 3.16.14.0) + ref + thin (1.5.1) daemons (>= 1.0.9) eventmachine (>= 0.12.6) rack (>= 1.0.0) - thor (0.15.4) - tilt (1.3.3) - uglifier (1.2.7) + thor (0.18.1) + tilt (1.3.7) + uglifier (2.1.2) execjs (>= 0.3.0) - multi_json (~> 1.3) - url_mount (0.2.1) - rack - yui-compressor (0.9.6) - POpen4 (>= 0.1.4) + multi_json (~> 1.0, >= 1.0.2) PLATFORMS ruby DEPENDENCIES highline (~> 1.6.15) - middleman (~> 3.0.6) - middleman-minify-html (~> 3.0.0) + middleman (~> 3.1.5) + middleman-minify-html (~> 3.1.1) rack-contrib (~> 1.1.0) - redcarpet (~> 2.2.2) - therubyracer (~> 0.10.2) + redcarpet (~> 3.0.0) + therubyracer (~> 0.12.0) thin (~> 1.5.0) diff --git a/website/source/docs/templates/post-processors.html.markdown b/website/source/docs/templates/post-processors.html.markdown index e4c1bfa8c..cda12e2a2 100644 --- a/website/source/docs/templates/post-processors.html.markdown +++ b/website/source/docs/templates/post-processors.html.markdown @@ -125,3 +125,28 @@ The answer is no, of course not. Packer is smart enough to figure out that at least one post-processor requested that the input be kept, so it will keep it around. + +## Run on Specific Builds + +You can use the `only` or `except` configurations to run a post-processor +only with specific builds. These two configurations do what you expect: +`only` will only run the post-processor on the specified builds and +`except` will run the post-processor on anything other than the specified +builds. + +An example of `only` being used is shown below, but the usage of `except` +is effectively the same. `only` and `except` can only be specified on "detailed" +configurations. If you have a sequence of post-processors to run, `only` +and `except` will only affect that single post-processor in the sequence. + +
+{ + "type": "vagrant", + "only": ["virtualbox"] +} ++ +The values within `only` or `except` are _build names_, not builder +types. If you recall, build names by default are just their builder type, +but if you specify a custom `name` parameter, then you should use that +as the value instead of the type. diff --git a/website/source/docs/templates/provisioners.html.markdown b/website/source/docs/templates/provisioners.html.markdown index f4263fb9b..eb49788e1 100644 --- a/website/source/docs/templates/provisioners.html.markdown +++ b/website/source/docs/templates/provisioners.html.markdown @@ -53,6 +53,30 @@ provisioner to run a local script within the machines: } +## Run on Specific Builds + +You can use the `only` or `except` configurations to run a provisioner +only with specific builds. These two configurations do what you expect: +`only` will only run the provisioner on the specified builds and +`except` will run the provisioner on anything other than the specified +builds. + +An example of `only` being used is shown below, but the usage of `except` +is effectively the same: + +
+{ + "type": "shell", + "script": "script.sh", + "only": ["virtualbox"] +} ++ +The values within `only` or `except` are _build names_, not builder +types. If you recall, build names by default are just their builder type, +but if you specify a custom `name` parameter, then you should use that +as the value instead of the type. + ## Build-Specific Overrides While the goal of Packer is to produce identical machine images, it