Sha256: 802079165e7645c9cc427a087b3ea351786e2ad5fc7f5e3c44bbdb24d21dc08b
Contents?: true
Size: 1.58 KB
Versions: 1
Compression:
Stored size: 1.58 KB
Contents
module Vx module Builder class ScriptBuilder class Nodejs < Base DEFAULT_NODE = '0.10' NPM_PACKAGES = '~/.npm-packages' BOWER_COMPONENTS = '~/.bower_components' def call(env) if enabled?(env) vxvm_install(env, 'nodejs', node_version(env)) do_cache_key(env) do |i| i << "nodejs-#{node_version env}" end do_announce(env) do |i| i << trace_sh_command("node --version") i << trace_sh_command("npm --version") end do_install(env) do |i| i << trace_sh_command("npm install") end do_script(env) do |i| i << trace_sh_command("npm test") end do_before_install(env) do |i| i << "mkdir -p #{NPM_PACKAGES}" i << "mkdir -p #{BOWER_COMPONENTS}" i << trace_sh_command("npm config set prefix=#{NPM_PACKAGES}") i << "test -f .bowerrc || (" + trace_sh_command("export bower_directory=#{BOWER_COMPONENTS}") + ")" i << "export PATH=$PATH:#{NPM_PACKAGES}/bin" end do_cached_directories(env) do |i| i << NPM_PACKAGES i << BOWER_COMPONENTS end end app.call(env) end private def enabled?(env) env.source.node_js.first || env.source.language == 'node_js' end def node_version(env) env.source.node_js.first || DEFAULT_NODE end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
vx-builder-0.5.23 | lib/vx/builder/script_builder/nodejs.rb |