Sha256: d2a7f0855bfb82ed4e3c5a90708014ace2b87212249546edb5ae02d77a7f85d3

Contents?: true

Size: 1.17 KB

Versions: 7

Compression:

Stored size: 1.17 KB

Contents

module Vx
  module Builder
    class ScriptBuilder

      Base = Struct.new(:app) do

        include Helper::TraceShCommand

        def do_cache_key(env)
          yield env.cache_key
        end

        def do_script(env)
          if env.source.script.empty? && !env.source.deploy_modules?
            yield env.script
          end
        end

        def do_cached_directories(env)
          if env.source.cached_directories != false
            yield env.cached_directories
          end
        end

        def do_announce(env)
          yield env.announce
        end

        def do_before_install(env)
          yield env.before_install
        end

        def do_install(env)
          yield env.install
        end

        def do_deploy_script(env)
          if deploy?(env)
            yield env.script
          end
        end

        def do_before_deploy(env)
          if deploy?(env)
            yield env.before_script
          end
        end

        def do_after_deploy(env)
          if deploy?(env)
            yield env.after_success
          end
        end

        def deploy?(env)
          env.source.deploy_modules?
        end

      end

    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
vx-builder-0.3.10 lib/vx/builder/script_builder/base.rb
vx-builder-0.3.9 lib/vx/builder/script_builder/base.rb
vx-builder-0.3.8 lib/vx/builder/script_builder/base.rb
vx-builder-0.3.7 lib/vx/builder/script_builder/base.rb
vx-builder-0.3.6 lib/vx/builder/script_builder/base.rb
vx-builder-0.3.5 lib/vx/builder/script_builder/base.rb
vx-builder-0.3.4 lib/vx/builder/script_builder/base.rb