Sha256: 4515d7dd3d44b19783e11aa6967c7bd81fc287b70ee246c9fe960a22e118312b

Contents?: true

Size: 1.31 KB

Versions: 8

Compression:

Stored size: 1.31 KB

Contents

module Vx
  module Builder
    class ScriptBuilder

      Base = Struct.new(:app) do

        include Helper::TraceShCommand
        include Common::Helper::UploadShCommand
        include Helper::VxvmInstall

        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)
          if env.source.install.empty?
            yield env.install
          end
        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

8 entries across 8 versions & 1 rubygems

Version Path
vx-builder-0.5.15 lib/vx/builder/script_builder/base.rb
vx-builder-0.5.14 lib/vx/builder/script_builder/base.rb
vx-builder-0.5.13 lib/vx/builder/script_builder/base.rb
vx-builder-0.5.12 lib/vx/builder/script_builder/base.rb
vx-builder-0.5.11 lib/vx/builder/script_builder/base.rb
vx-builder-0.5.10 lib/vx/builder/script_builder/base.rb
vx-builder-0.5.9 lib/vx/builder/script_builder/base.rb
vx-builder-0.5.8 lib/vx/builder/script_builder/base.rb