Sha256: edcff5de630e340361a1fc60ed6e5070d9e0cd003893ae5fdc09b5ca8f0618f2

Contents?: true

Size: 970 Bytes

Versions: 3

Compression:

Stored size: 970 Bytes

Contents

module Vx
  module Builder
    class Script

      Script = Struct.new(:app) do

        include Helper::TraceShCommand

        def call(env)
          env.source.before_install.each do |c|
            env.before_install << trace_sh_command(c)
          end

          if env.task.deploy?
            env.source.before_deploy.each do |c|
              env.before_script << trace_sh_command(c)
            end
            env.source.after_deploy.each do |c|
              env.after_success << trace_sh_command(c)
            end
          else
            env.source.before_script.each do |c|
              env.before_script << trace_sh_command(c)
            end
            env.source.script.each do |c|
              env.script << trace_sh_command(c)
            end
            env.source.after_success.each do |c|
              env.after_success << trace_sh_command(c)
            end
          end

          app.call(env)
        end

      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
vx-builder-0.2.2 lib/vx/builder/script/script.rb
vx-builder-0.2.1 lib/vx/builder/script/script.rb
vx-builder-0.2.0 lib/vx/builder/script/script.rb