Class: Cloudkeeper::One::CLI

Inherits:
Thor
  • Object
show all
Defined in:
lib/cloudkeeper/one/cli.rb

Constant Summary collapse

SIGINT =
2
SIGTERM =
15
SIGNALS =
[SIGTERM, SIGINT].freeze

Instance Method Summary collapse

Instance Method Details

#syncObject



96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
# File 'lib/cloudkeeper/one/cli.rb', line 96

def sync
  initialize_sync options
  grpc_server = GRPC::RpcServer.new
  grpc_server.add_http2_port Cloudkeeper::One::Settings[:'listen-address'], credentials
  grpc_server.handle Cloudkeeper::One::CoreConnector
  grpc_server.run_till_terminated
rescue SignalException => ex
  raise ex unless SIGNALS.include? ex.signo

  grpc_server.stop
rescue Cloudkeeper::One::Errors::InvalidConfigurationError => ex
  abort ex.message
rescue StandardError => ex
  logger.error "Unexpected error: #{ex.message}"
  raise ex
end

#versionObject



114
115
116
# File 'lib/cloudkeeper/one/cli.rb', line 114

def version
  $stdout.puts Cloudkeeper::One::VERSION
end