Sha256: 624c88370baa26ab4078b17d799cb969c6370d319d9ab2803f9de6dd38480b18

Contents?: true

Size: 1.44 KB

Versions: 4

Compression:

Stored size: 1.44 KB

Contents

require 'rubygems'
require 'cli/command'

module Factor
  module CLI
    class ServerTask < Command
      desc "start", "start the server"
      method_option :tags, :alias=>"-t", :type=>:hash, :desc=>"Optional tags to identify from workflow"
      def start
        engine = Factor::Runtime::Engine.new(get_config[:email],get_config[:token])
        
        options.tags.each {|tag,value| engine.tag(tag,value)} if options.tags?
   
        puts "loading channels"
        engine = @client.load_channels(engine) do |message|
          puts "  #{message}"
        end
        puts "loading channels complete"
      
        puts "loading workflows"
        engine = @client.load_workflows(engine) do |message|
          puts "  #{message}"
        end
        puts "loading workflows complete"
    
        puts "loading credentials"
        engine = @client.load_credentials(engine) do |message|
          puts "  #{message}"
        end
        puts "loading credentials complete"
    
        puts "starting the server..."
        engine.start
    
      end
  
      desc "list", "list all the running servers"
      def list
        puts "listing all servers"
      end
  
      desc "logs", "listen to incoming logs"
      def logs
        engine = Factor::Runtime::Engine.new(get_config[:email],get_config[:token])
        puts "Listening..."
        engine.logs do |message|
          puts "[#{message.route}] #{message.body}"
        end
      end
  
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
factor-0.0.84 lib/cli/server_task.rb
factor-0.0.83 lib/cli/server_task.rb
factor-0.0.82 lib/cli/server_task.rb
factor-0.0.81 lib/cli/server_task.rb