Sha256: d956cd44ebe80a397b8f2f5463cc5256c78d85c3c4579f1abcccf9d3ecae1897

Contents?: true

Size: 1.68 KB

Versions: 3

Compression:

Stored size: 1.68 KB

Contents

require 'notifyor/version'
require 'optparse'
require 'active_support/dependencies'

module Notifyor
  class CLI

    def parse
      # Default configuration.
      ENV['ssh_host'] = 'localhost'
      ENV['ssh_port'] = '22'
      ENV['ssh_tunnel_port'] = '2000'
      ENV['ssh_redis_port'] = '6379'

      ::OptionParser.new do |opts|
        opts.banner = 'Usage: notify_me [options]'

        opts.on('-v', '--version',
                'Show the current version of this gem') do
          puts "Notifyor Version: #{::Notifyor::VERSION}"; exit
        end

        opts.on('--ssh-host host', 'Provide the host address to your deployment/remote server') do |host|
         ENV['ssh_host'] = host
        end

        opts.on('--ssh-port port', 'Provide the ssh port for the deployment/remote server') do |port|
          ENV['ssh_port'] = port
        end

        opts.on('--ssh-user user', 'Provide the ssh user for the deployment/remote server') do |user|
          ENV['ssh_user'] = user
        end

        opts.on('--tunnel-port tunnel_port', 'Provide the ssh user for the deployment/remote server') do |tunnel_port|
          ENV['ssh_tunnel_port'] = tunnel_port
        end

        opts.on('--redis-port redis_port', 'Provide the ssh user for the deployment/remote server') do |redis_port|
          ENV['ssh_redis_port'] = redis_port
        end
      end.parse!
    end

    def check_notifications
      connection = Notifyor::Remote::Connection.new
      begin
        connection.build_tunnel
        connection.build_redis_tunnel_connection
        connection.subscribe_to_redis
      rescue => e
        STDOUT.write "Could not establish SSH tunnel. Reason: #{e.message}"
      end
    end

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
notifyor-0.5.6 lib/notifyor/cli.rb
notifyor-0.5.5 lib/notifyor/cli.rb
notifyor-0.5.4 lib/notifyor/cli.rb