class DTK::Client::Operation::Module::Install::DependentModules::LocalDependencies

Constants

BaseRoute

Public Class Methods

install_or_pull?(server_response, prompt_helper, print_helper) click to toggle source
# File lib/client/operation/module/install/dependent_modules/local_dependencies.rb, line 31
def self.install_or_pull?(server_response, prompt_helper, print_helper)
  if dependencies = (server_response.data(:dependencies)||{})['required_modules']
    dependencies.each do |dep|
      unless Install::DependentModules.resolved.include?("#{dep['namespace']}:#{dep['name']}")
        Install::DependentModules.add_to_resolved("#{dep['namespace']}:#{dep['name']}")
        dep_module_ref = Install::DependentModules.create_module_ref(dep, opts = {})
        if dep_ref_info = module_version_exists?(dep_module_ref, :remote_info => true, :rsa_pub_key => SSHUtil.rsa_pub_key_content)
          new_print_helper = Install::PrintHelper.new(:module_ref => dep_module_ref, :source => :remote)
          if dep_ref_info.data(:has_remote) && !prompt_helper.update_none
            ComponentModule.install_or_pull?(dep_module_ref, prompt_helper, new_print_helper) unless dep_module_ref.is_base_module?
          else
            new_print_helper.print_using_installed_dependent_module
          end
        end
      end
    end
  end
end
new(module_ref, prompt_helper, print_helper) click to toggle source
# File lib/client/operation/module/install/dependent_modules/local_dependencies.rb, line 24
def initialize(module_ref, prompt_helper, print_helper)
  @module_ref    = module_ref
  @prompt_helper = prompt_helper
  @print_helper  = print_helper.set_module_ref!(module_ref)
end