Sha256: a99656ac152726f949951a8e8804ee17f93229c0ecf0e0668afc11ad6cdefadb
Contents?: true
Size: 1.99 KB
Versions: 18
Compression:
Stored size: 1.99 KB
Contents
require 'thor' require 'sinatra/base' require_relative 'app' require_relative 'metadata' module OpsAsk class Main < Thor desc 'art', 'Show the application art' def art max_line_len = OpsAsk::ART.lines.sort_by { |l| l.length }.last.length description = "OpsAsk #{OpsAsk::VERSION} / #{OpsAsk::SUMMARY} / #{OpsAsk::AUTHOR} (#{OpsAsk::EMAIL})" puts puts OpsAsk::ART puts description.center(max_line_len) puts end desc 'version', 'Show the application version' def version puts OpsAsk::VERSION end desc 'server', 'Start application web server' option :config, \ type: :string, aliases: %w[ -c ], desc: 'Path to configuration file', required: true option :port, \ type: :numeric, aliases: %w[ -p ], desc: 'Set Sinatra port', default: 3000 option :environment, \ type: :string, aliases: %w[ -e ], desc: 'Set Sinatra environment', default: 'development' option :bind, \ type: :string, aliases: %w[ -b ], desc: 'Set Sinatra interface', default: '0.0.0.0' def server config = { ops_group: 'change-network-operations', agile_board: '169', # Operations assignee: 'denimcores', jira_user: nil, jira_pass: nil, jira_url: 'http://jira.bluejeansnet.com', queue_size: 10, cutoff_hour: 18, # 6pm project_key: 'INF', project_name: 'Infrastructure', issue_type: 'Task', version: 'Un-targeted', jira_private_key: 'opsask.pem', jira_consumer_key: 'opsask-test', app_version: OpsAsk::VERSION, require_label: nil } if options[:config] config.merge! JSON::parse(File.read(options[:config]), symbolize_names: true) end App.run! \ config: config, bind: options[:bind], port: options[:port], environment: options[:environment], raise_errors: true end end end
Version data entries
18 entries across 18 versions & 1 rubygems