Method: Kontena::Cli::Stacks::InstallCommand#execute

Defined in:
lib/kontena/cli/stacks/install_command.rb

#executeObject



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
# File 'lib/kontena/cli/stacks/install_command.rb', line 28

def execute
  install_dependencies unless skip_dependencies?

  set_env_variables(stack_name, current_grid)

  stack # runs validations

  kontena_requirement = stack.dig('metadata', 'required_kontena_version')
  unless kontena_requirement.nil?
    master_version = Gem::Version.new(client.server_version)
    unless Gem::Requirement.new(kontena_requirement).satisfied_by?(master_version)
      puts "#{pastel.red("Warning: ")} Stack requires kontena version #{kontena_requirement} but Master version is #{master_version}"
      confirm("Are you sure? You can skip this prompt by running this command with --force option") unless forced?
    end
  end

  hint_on_validation_notifications(reader.notifications)
  abort_on_validation_errors(reader.errors)

  dump_variables if values_to

  create_stack

  if deploy?
    deploy_dependencies
    deploy_stack
  end
end