Sha256: d6549b87db490d09a54fe9f3b484d8e3ea4d8ea45735eb13f2de940a032e2495

Contents?: true

Size: 1.11 KB

Versions: 76

Compression:

Stored size: 1.11 KB

Contents

module Vx
  module Builder
    class ScriptBuilder

      class Scala < Base

        DEFAULT_SCALA = '2.10.3'

        def call(env)
          if enabled?(env)
            do_cache_key(env) do |i|
              i << "scala-#{scala env}"
            end

            do_announce(env) do |i|
              i << trace_sh_command("export SCALA_VERSION=#{scala env}")
            end

            do_install(env) do |i|
              i << "if [[ -d project || -f build.sbt ]] ; then #{trace_sh_command "sbt ++#{scala env} update"} ; fi"
            end

            do_script(env) do |i|
              i << "if [[ -d project || -f build.sbt ]] ; then #{trace_sh_command "sbt ++#{scala env} test"} ; fi"
            end

            do_cached_directories(env) do |i|
              i << "~/.sbt"
              i << "~/.ivy2"
            end
          end

          app.call(env)
        end

        private

          def enabled?(env)
            env.source.scala.first || env.source.language == 'scala'
          end

          def scala(env)
            env.source.scala.first || DEFAULT_SCALA
          end


      end
    end
  end
end

Version data entries

76 entries across 76 versions & 1 rubygems

Version Path
vx-builder-0.5.19 lib/vx/builder/script_builder/scala.rb
vx-builder-0.5.18 lib/vx/builder/script_builder/scala.rb
vx-builder-0.5.17 lib/vx/builder/script_builder/scala.rb
vx-builder-0.5.16 lib/vx/builder/script_builder/scala.rb
vx-builder-0.5.15 lib/vx/builder/script_builder/scala.rb
vx-builder-0.5.14 lib/vx/builder/script_builder/scala.rb
vx-builder-0.5.13 lib/vx/builder/script_builder/scala.rb
vx-builder-0.5.12 lib/vx/builder/script_builder/scala.rb
vx-builder-0.5.11 lib/vx/builder/script_builder/scala.rb
vx-builder-0.5.10 lib/vx/builder/script_builder/scala.rb
vx-builder-0.5.9 lib/vx/builder/script_builder/scala.rb
vx-builder-0.5.8 lib/vx/builder/script_builder/scala.rb
vx-builder-0.5.7 lib/vx/builder/script_builder/scala.rb
vx-builder-0.5.6 lib/vx/builder/script_builder/scala.rb
vx-builder-0.5.5 lib/vx/builder/script_builder/scala.rb
vx-builder-0.5.4 lib/vx/builder/script_builder/scala.rb
vx-builder-0.5.3 lib/vx/builder/script_builder/scala.rb
vx-builder-0.5.2 lib/vx/builder/script_builder/scala.rb
vx-builder-0.5.1 lib/vx/builder/script_builder/scala.rb
vx-builder-0.5.0 lib/vx/builder/script_builder/scala.rb