Sha256: b959281b68962e3ce50a0f4c3e4bdd786ee411814efb0afb212a847668fa8aa3

Contents?: true

Size: 1.67 KB

Versions: 46

Compression:

Stored size: 1.67 KB

Contents

# frozen_string_literal: true

require 'active_support/core_ext/numeric/time'
require 'avm/result'
require 'eac_cli/speaker'
require 'eac_ruby_utils/simple_cache'

module Avm
  module EacWebappBase0
    module Instances
      module Runners
        class Data
          class Load
            runner_with :help do
              desc 'Load utility for EacRailsBase instance.'
              arg_opt '-S', '--source-instance', 'Informa a instância a ser extraída o dump.'
              pos_arg :dump_path, optional: true
            end

            def run
              return fatal_error("Dump \"#{dump_path}\" does not exist") unless
              ::File.exist?(dump_path)

              load_dump
              success("Dump loaded from \"#{dump_path}\"")
            end

            def dump_path_uncached
              return parsed.dump_path.to_s if parsed.dump_path.present?
              return source_instance_dump_path if parsed.source_instance.present?

              raise "Dump path unknown (Options: #{parsed})"
            end

            def source_instance_dump_path
              runner_context.call(:instance).class.by_id(parsed.source_instance).run_subcommand(
                ::Avm::EacWebappBase0::Instances::Runners::Data::Dump, []
              )
            end

            def load_dump
              info "Loading dump \"#{dump_path}\"..."
              package_load.run
            end

            def dump_instance_method
              :dump_database
            end

            private

            def package_load_uncached
              runner_context.call(:instance).data_package.load(dump_path)
            end
          end
        end
      end
    end
  end
end

Version data entries

46 entries across 46 versions & 2 rubygems

Version Path
avm-eac_webapp_base0-0.20.1 lib/avm/eac_webapp_base0/instances/runners/data/load.rb
eac_tools-0.94.0 sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data/load.rb
avm-eac_webapp_base0-0.20.0 lib/avm/eac_webapp_base0/instances/runners/data/load.rb
eac_tools-0.93.0 sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data/load.rb
avm-eac_webapp_base0-0.19.0 lib/avm/eac_webapp_base0/instances/runners/data/load.rb
eac_tools-0.87.0 sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data/load.rb
avm-eac_webapp_base0-0.18.4 lib/avm/eac_webapp_base0/instances/runners/data/load.rb
eac_tools-0.86.8 sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data/load.rb
eac_tools-0.84.2 sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data/load.rb
avm-eac_webapp_base0-0.18.3 lib/avm/eac_webapp_base0/instances/runners/data/load.rb
eac_tools-0.84.1 sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data/load.rb
eac_tools-0.84.0 sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data/load.rb
eac_tools-0.83.0 sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data/load.rb
eac_tools-0.82.0 sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data/load.rb
eac_tools-0.81.0 sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data/load.rb
eac_tools-0.80.0 sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data/load.rb
eac_tools-0.79.0 sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data/load.rb
eac_tools-0.78.0 sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data/load.rb
eac_tools-0.77.1 sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data/load.rb
eac_tools-0.77.0 sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data/load.rb