20
21
22
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
|
# File 'lib/yadecli/command/project/project_install_command.rb', line 20
def execute
project_client = Yade::Project::Rest::Client::ProjectClient.new
vcs_client = Yade::Project::Rest::Client::VcsClient.new
project = project_client.project_by_name(self.project_name)
vcs = vcs_client.get(project.vcsId)
if project.installed?
puts "The project with name #{project_name} is already installed"
if options[:yes]
do_update = true
else
puts ''
prompt = TTY::Prompt.new
do_update = prompt.yes?('Do you want to pull the changes for the project? ')
end
end
cmd = TTY::Command.new(output: Yadecli.LOGGER)
if do_update
cmd_line = 'git pull'
cmd.run(cmd_line, chdir: project.home)
"Yade project #{project.name} successfully pulled in #{project.home}"
else
cmd_line = "git clone #{vcs.url} #{project.home}"
cmd.run(cmd_line)
"Yade project #{project.name} successfully installed to #{project.home}"
end
end
|