Sha256: 94b46f66911a8a7f6aaea1bb6f3d954744e7b9c6a3c4863bd4d61f046d9c2700

Contents?: true

Size: 1.87 KB

Versions: 1

Compression:

Stored size: 1.87 KB

Contents

require 'rubygems'
require 'cli/command'

module Factor
  module CLI
    class WorkflowTask < Command
  
      desc "call WORKFLOW","start a workflow"
      method_option :parameters, :type=>:hash, :default=>{}, :required=>false
      def call(workflow_name)
        puts "starting workflow #{workflow_name} with options #{options.parameters.to_s}"
    
        engine = Factor::Runtime::Engine.new(get_config[:email],get_config[:token])
        id = engine.send_start_workflow(workflow_name,options.parameters)
    
        puts "workflow executed with id #{id}"
      end
  
      desc "listen WORKFLOW","start listener for workflow"
      def listen(workflow_name)
        puts "starting listener #{workflow_name}"
    
        engine = Factor::Runtime::Engine.new(get_config[:email],get_config[:token])
        engine.send_start_listener(workflow_name)
      end

      desc "stop WORKFLOW","stop listener for workflow"
      def stop(workflow_name)
        puts "starting listener #{workflow_name}"
    
        engine = Factor::Runtime::Engine.new(get_config[:email],get_config[:token])
        engine.send_stop_listener(workflow_name)
      end
      
      
      desc "list", "list all the workflows"
      #method_option :key, :alias=>"-k", :type=>:string, :desc=>"key reference"
      def list
        puts @client.get_workflows
      end
    
      desc "add NAME FILENAME", "add a key and value for the credential"
      #method_option :key, :alias=>"-k", :type=>:string, :desc=>"key reference"
      #method_option :value, :alias=>"-v", :type=>:string, :desc=>"values"
      def add(name,filename)
        contents=File.open(File.expand_path(filename), "rb") {|f| f.read}
        puts @client.add_workflow(name,contents)
      end
    
      # desc "remove NAME", "remove a workflow"
      # def remove(name)
      #   puts @client.remove_workflow(name)
      # end
      
      
      
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
factor-0.1.10 lib/cli/workflow_task.rb