23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
# File 'lib/yadecli/command/composer/composer_install_command.rb', line 23
def execute
composer_project_client = Yade::Composer::Rest::Client::ComposerProjectClient.new
composer_service_client = Yade::Composer::Rest::Client::ComposerServiceClient.new
composer_project = composer_project_client.get_by_name(self.project_name)
FileUtils.rm_rf(composer_project.install_dir) if options[:clean]
check_install_preconditions(options)
already_installed = composer_project.installed?
branch_name = UserInput.select_branch(composer_project.git_repo_name) if branch_name == nil && !already_installed && !options[:yes]
if already_installed
puts "Composer project #{project_name} already installed.".colorize(color: :blue, mode: :bold)
puts ' ↳ Doing a git pull.'
pull_repository(composer_project, options)
else
puts "Composer project #{project_name} will be installed.".colorize(color: :blue, mode: :bold)
puts ' ↳ Doing a git clone.'
clone_repository(composer_project, branch_name)
end
puts ''
if already_installed
puts " Successfully updated '#{composer_project.name}' at #{composer_project.install_dir}."
else
puts " Successfully installed '#{composer_project.name}' to #{composer_project.install_dir}."
end
composer_services = composer_service_client.get_by_composer_project_id(composer_project.id)
service_names = composer_services.collect(&:name).join(' | ')
pull_container(composer_project) if options[:pull]
"""
Use the following commands to manage the service(s)
Start : bin/yadecli composer start #{composer_project.name} #{service_names}
Stop : bin/yadecli composer stop #{composer_project.name} #{service_names}
"""
end
|