factor 0.0.7 → 0.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/cli/server_task.rb +3 -0
- data/lib/client/client.rb +2 -1
- data/lib/runtime/engine.rb +7 -3
- data/lib/runtime/message_bus.rb +2 -1
- metadata +1 -17
data/lib/cli/server_task.rb
CHANGED
@@ -5,8 +5,11 @@ module Factor
|
|
5
5
|
module CLI
|
6
6
|
class ServerTask < Command
|
7
7
|
desc "start", "start the server"
|
8
|
+
method_option :tags, :alias=>"-t", :type=>:hash, :desc=>"Optional tags to identify from workflow"
|
8
9
|
def start
|
9
10
|
engine = Factor::Runtime::Engine.new(get_config[:email],get_config[:token])
|
11
|
+
|
12
|
+
options.tags.each {|tag,value| engine.tag(tag,value)}
|
10
13
|
|
11
14
|
puts "loading channels"
|
12
15
|
engine = @client.load_channels(engine)
|
data/lib/client/client.rb
CHANGED
data/lib/runtime/engine.rb
CHANGED
@@ -2,7 +2,6 @@ require 'rubygems'
|
|
2
2
|
require 'factor'
|
3
3
|
require 'mustache'
|
4
4
|
require 'facter'
|
5
|
-
require 'siren'
|
6
5
|
|
7
6
|
|
8
7
|
module Factor
|
@@ -16,8 +15,12 @@ module Factor
|
|
16
15
|
@workflows = Hash.new
|
17
16
|
@message_bus = MessageBus.new(username,token)
|
18
17
|
@credentials = Hash.new
|
18
|
+
@tags = Hash.new
|
19
19
|
end
|
20
20
|
|
21
|
+
def tag(key,value)
|
22
|
+
@tags[key]=value
|
23
|
+
end
|
21
24
|
|
22
25
|
# load the channel by referencing the .rb file
|
23
26
|
# the filename is lowercase with "_" for spaces
|
@@ -114,8 +117,9 @@ module Factor
|
|
114
117
|
|
115
118
|
def match(target)
|
116
119
|
return true if target==nil || target==""
|
117
|
-
|
118
|
-
|
120
|
+
facts Facter.collection.merge(@tags)
|
121
|
+
key,value=target.split("=")
|
122
|
+
facts[key]==value
|
119
123
|
end
|
120
124
|
|
121
125
|
|
data/lib/runtime/message_bus.rb
CHANGED
@@ -21,7 +21,8 @@ module Factor
|
|
21
21
|
# the exchange routes it to the queues based on the route_key
|
22
22
|
def start(topic="workflow",&code)
|
23
23
|
EventMachine.run do
|
24
|
-
connection_settings={:host=>@host,:user=>@username,:password=>@token,:vhost=>@vhost}
|
24
|
+
#connection_settings={:host=>@host,:user=>@username,:password=>@token,:vhost=>@vhost}
|
25
|
+
connection_settings={:host=>@host}
|
25
26
|
@connection = AMQP.connect(connection_settings)
|
26
27
|
@channel = AMQP::Channel.new(connection)
|
27
28
|
@exchange = @channel.topic(topic,:auto_delete=>true) # new topic exchange
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: factor
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.8
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -139,22 +139,6 @@ dependencies:
|
|
139
139
|
- - ! '>='
|
140
140
|
- !ruby/object:Gem::Version
|
141
141
|
version: '0'
|
142
|
-
- !ruby/object:Gem::Dependency
|
143
|
-
name: siren
|
144
|
-
requirement: !ruby/object:Gem::Requirement
|
145
|
-
none: false
|
146
|
-
requirements:
|
147
|
-
- - ! '>='
|
148
|
-
- !ruby/object:Gem::Version
|
149
|
-
version: '0'
|
150
|
-
type: :runtime
|
151
|
-
prerelease: false
|
152
|
-
version_requirements: !ruby/object:Gem::Requirement
|
153
|
-
none: false
|
154
|
-
requirements:
|
155
|
-
- - ! '>='
|
156
|
-
- !ruby/object:Gem::Version
|
157
|
-
version: '0'
|
158
142
|
- !ruby/object:Gem::Dependency
|
159
143
|
name: facter
|
160
144
|
requirement: !ruby/object:Gem::Requirement
|