Class: DTK::Client::Operation::ClientModuleDir::ServiceInstance::Internal
Overview
All Internal methods do not have wrap_operation and can only be accessed by a method that wraps it
Defined Under Namespace
Classes: ModuleInfo
Constant Summary
NAMESPACE_SEPERATOR
TYPES
Class Method Summary
collapse
Instance Method Summary
collapse
create_file_with_content, create_module_dir, create_module_dir_from_path, create_service_dir, delete_directory_content, local_dir_exists?, ret_base_path, ret_path_with_current_dir, rm_f
Class Method Details
.clone(args) ⇒ Object
34
35
36
|
# File 'lib/client/operation/client_module_dir/service_instance/internal.rb', line 34
def self.clone(args)
new(args).clone
end
|
.clone_nested_modules(args) ⇒ Object
38
39
40
|
# File 'lib/client/operation/client_module_dir/service_instance/internal.rb', line 38
def self.clone_nested_modules(args)
new(args).clone_nested_modules
end
|
.commit_and_push_nested_modules(args) ⇒ Object
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
# File 'lib/client/operation/client_module_dir/service_instance/internal.rb', line 55
def self.commit_and_push_nested_modules(args)
service_instance = args[:service_instance]
service_instance_dir = args[:service_instance_dir] || ret_base_path(:service, service_instance)
nested_modules_dir = find_nested_modules_dir(service_instance_dir)
nested_modules = Dir.glob("#{nested_modules_dir}/*")
nested_modules_with_sha = []
nested_modules.each do |nested_module|
nested_module_name = nested_module.split('/').last
response = ClientModuleDir::GitRepo.commit_and_push_to_nested_module_repo({target_repo_dir: nested_module})
if head_sha = response.data(:head_sha)
nested_modules_with_sha << { nested_module_name => head_sha }
end
end
nested_modules_with_sha
end
|
.modified_service_instance_or_nested_modules?(args) ⇒ Boolean
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
|
# File 'lib/client/operation/client_module_dir/service_instance/internal.rb', line 74
def self.modified_service_instance_or_nested_modules?(args)
service_instance_dir = args.required(:dir)
command = args.required(:command)
error_msg = args.required(:error_msg)
is_modified?(service_instance_dir, command, error_msg)
nested_modules_dir = find_nested_modules_dir(service_instance_dir)
nested_modules = Dir.glob("#{nested_modules_dir}/*")
nested_modules.each do |nested_module|
nested_module_name = nested_module.split('/').last
nested_error_msg = "There are uncommitted changes in nested module '#{nested_module_name}'! #{error_msg}"
is_modified?(nested_module, command, nested_error_msg)
end
end
|
.remove_nested_module_dirs(args) ⇒ Object
91
92
93
94
95
96
97
98
99
100
101
102
103
|
# File 'lib/client/operation/client_module_dir/service_instance/internal.rb', line 91
def self.remove_nested_module_dirs(args)
service_instance = args[:service_instance]
service_instance_dir = args[:service_instance_dir] || ret_base_path(:service, service_instance)
nested_modules_dir = find_nested_modules_dir(service_instance_dir)
nested_modules = Dir.glob("#{nested_modules_dir}/*")
args[:nested_modules_to_delete].each do |nested_module|
module_to_delete_path = "#{nested_modules_dir}/#{nested_module['display_name']}"
FileUtils.remove_dir(module_to_delete_path) if nested_modules.include? module_to_delete_path
end
args[:nested_modules_to_delete]
end
|
Instance Method Details
#clone ⇒ Object
48
49
50
51
52
53
|
# File 'lib/client/operation/client_module_dir/service_instance/internal.rb', line 48
def clone
@target_repo_dir = clone_base_module
@nested_module_base = make_nested_module_base
self.nested_modules.each { |nested_module| clone_nested_module(nested_module) }
self.target_repo_dir
end
|
#clone_nested_modules ⇒ Object
42
43
44
45
46
|
# File 'lib/client/operation/client_module_dir/service_instance/internal.rb', line 42
def clone_nested_modules
@target_repo_dir = self.repo_dir
@nested_module_base = self.class.find_nested_modules_dir(self.repo_dir)
self.nested_modules.each { |nested_module| clone_nested_module(nested_module) }
end
|