legionio 0.3.1 → 0.4.0
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.
- checksums.yaml +4 -4
- data/.circleci/config.yml +27 -10
- data/.gitignore +1 -0
- data/.rubocop.yml +7 -2
- data/CHANGELOG.md +21 -0
- data/Dockerfile +9 -0
- data/Gemfile +0 -11
- data/README.md +158 -42
- data/Rakefile +0 -6
- data/bitbucket-pipelines.yml +17 -52
- data/docker_deploy.rb +8 -0
- data/exe/legion +3 -49
- data/{bin/legion → exe/legionio} +5 -42
- data/exe/lex_gen +5 -0
- data/{legion.gemspec → legionio.gemspec} +25 -20
- data/lib/legion.rb +4 -0
- data/lib/legion/cli.rb +56 -0
- data/lib/legion/cli/chain.rb +35 -0
- data/lib/legion/cli/cohort.rb +10 -0
- data/lib/legion/cli/function.rb +41 -0
- data/lib/legion/cli/lex/actor.rb +31 -0
- data/lib/legion/cli/lex/exchange.rb +32 -0
- data/lib/legion/cli/lex/message.rb +32 -0
- data/lib/legion/cli/lex/queue.rb +45 -0
- data/lib/legion/cli/lex/runner.rb +70 -0
- data/lib/legion/cli/lex/templates/actor.erb +6 -0
- data/lib/legion/cli/lex/templates/actor_spec.erb +0 -0
- data/lib/legion/cli/lex/templates/base/bitbucket.yml.erb +69 -0
- data/lib/legion/cli/lex/templates/base/gemfile.erb +3 -0
- data/lib/legion/cli/lex/templates/base/gemspec.erb +26 -0
- data/lib/legion/cli/lex/templates/base/gitignore.erb +11 -0
- data/lib/legion/cli/lex/templates/base/lex.erb +9 -0
- data/lib/legion/cli/lex/templates/base/lex_spec.erb +5 -0
- data/lib/legion/cli/lex/templates/base/lic.erb +21 -0
- data/lib/legion/cli/lex/templates/base/rakefile.erb +6 -0
- data/lib/legion/cli/lex/templates/base/readme.md.erb +2 -0
- data/lib/legion/cli/lex/templates/base/rubocop.yml.erb +15 -0
- data/lib/legion/cli/lex/templates/base/spec_helper.rb.erb +11 -0
- data/lib/legion/cli/lex/templates/base/version.erb +7 -0
- data/lib/legion/cli/lex/templates/exchange.erb +11 -0
- data/lib/legion/cli/lex/templates/exchange_spec.erb +0 -0
- data/lib/legion/cli/lex/templates/message.erb +23 -0
- data/lib/legion/cli/lex/templates/message_spec.erb +0 -0
- data/lib/legion/cli/lex/templates/queue.erb +12 -0
- data/lib/legion/cli/lex/templates/queue_helper.erb +24 -0
- data/lib/legion/cli/lex/templates/queue_spec.erb +11 -0
- data/lib/legion/cli/lex/templates/runner.erb +11 -0
- data/lib/legion/cli/lex/templates/runner_spec.erb +11 -0
- data/lib/legion/cli/relationship.rb +22 -0
- data/lib/legion/cli/task.rb +49 -0
- data/lib/legion/cli/trigger.rb +88 -0
- data/lib/legion/cli/version.rb +5 -0
- data/lib/legion/extensions.rb +57 -62
- data/lib/legion/extensions/actors/base.rb +0 -2
- data/lib/legion/extensions/actors/poll.rb +0 -1
- data/lib/legion/extensions/actors/subscription.rb +1 -0
- data/lib/legion/extensions/builders/runners.rb +5 -0
- data/lib/legion/extensions/core.rb +9 -4
- data/lib/legion/extensions/helpers/base.rb +3 -3
- data/lib/legion/extensions/helpers/lex.rb +29 -1
- data/lib/legion/extensions/helpers/logger.rb +3 -6
- data/lib/legion/extensions/helpers/task.rb +1 -1
- data/lib/legion/extensions/transport.rb +9 -7
- data/lib/legion/lex.rb +89 -0
- data/lib/legion/service.rb +55 -4
- data/lib/legion/version.rb +1 -1
- metadata +196 -51
- data/bin/console +0 -16
- data/bin/setup +0 -8
- data/bin/test +0 -32
- data/lib/legion/exceptions/handled_task.rb +0 -6
- data/lib/legion/exceptions/invalidjson.rb +0 -5
- data/lib/legion/exceptions/missingargument.rb +0 -6
- data/lib/legion/exceptions/wrongtype.rb +0 -10
- data/lib/legion/exceptions/wrongtypes/array.rb +0 -8
- data/lib/legion/exceptions/wrongtypes/hash.rb +0 -8
- data/lib/legion/exceptions/wrongtypes/integer.rb +0 -8
- data/lib/legion/exceptions/wrongtypes/string.rb +0 -8
- data/settings/client.json +0 -25
@@ -2,22 +2,19 @@ module Legion
|
|
2
2
|
module Extensions
|
3
3
|
module Helpers
|
4
4
|
module Logger
|
5
|
-
def log
|
5
|
+
def log
|
6
6
|
return @log unless @log.nil?
|
7
7
|
|
8
8
|
logger_hash = { lex: lex_filename || nil }
|
9
9
|
logger_hash[:lex] = lex_filename.first if logger_hash[:lex].is_a? Array
|
10
10
|
if respond_to?(:settings) && settings.key?(:logger)
|
11
|
-
logger_hash[:level] = settings[:logger]
|
12
|
-
logger_hash[:
|
13
|
-
logger_hash[:level] = 'info' unless settings[:logger].key? :log_file
|
11
|
+
logger_hash[:level] = settings[:logger].key?(:level) ? settings[:logger][:level] : 'info'
|
12
|
+
logger_hash[:log_file] = settings[:logger][:log_file] if settings[:logger].key? :log_file
|
14
13
|
logger_hash[:trace] = settings[:logger][:trace] if settings[:logger].key? :trace
|
15
14
|
logger_hash[:extended] = settings[:logger][:extended] if settings[:logger].key? :extended
|
16
15
|
elsif respond_to?(:settings)
|
17
16
|
Legion::Logging.warn Legion::Settings[:extensions][lex_filename.to_sym]
|
18
17
|
Legion::Logging.warn "#{lex_name} has settings but no :logger key"
|
19
|
-
else
|
20
|
-
Legion::Logging.warn 'no settings'
|
21
18
|
end
|
22
19
|
@log = Legion::Logging::Logger.new(**logger_hash)
|
23
20
|
end
|
@@ -30,7 +30,7 @@ module Legion
|
|
30
30
|
return true
|
31
31
|
end
|
32
32
|
rescue StandardError => e
|
33
|
-
log.
|
33
|
+
log.debug("task_update failed, reverting to rmq message, e: #{e.message}")
|
34
34
|
end
|
35
35
|
|
36
36
|
update_hash = { task_id: task_id, status: status }
|
@@ -67,15 +67,17 @@ module Legion
|
|
67
67
|
end
|
68
68
|
|
69
69
|
def auto_create_dlx_exchange
|
70
|
-
|
70
|
+
dlx = if transport_class::Exchanges.const_defined? 'Dlx'
|
71
|
+
transport_class::Exchanges::Dlx
|
72
|
+
else
|
73
|
+
transport_class::Exchanges.const_set('Dlx', Class.new(default_exchange) do
|
74
|
+
def exchange_name
|
75
|
+
"#{super}.dlx"
|
76
|
+
end
|
77
|
+
end)
|
78
|
+
end
|
71
79
|
|
72
|
-
dlx = transport_class::Exchanges.const_set('Dlx', Class.new(default_exchange) do
|
73
|
-
def exchange_name
|
74
|
-
"#{super}.dlx"
|
75
|
-
end
|
76
|
-
end)
|
77
80
|
dlx.new
|
78
|
-
dlx
|
79
81
|
end
|
80
82
|
|
81
83
|
def auto_create_dlx_queue
|
data/lib/legion/lex.rb
ADDED
@@ -0,0 +1,89 @@
|
|
1
|
+
require 'thor'
|
2
|
+
require 'legion/cli/version'
|
3
|
+
require 'legion/cli/lex/actor'
|
4
|
+
require 'legion/cli/lex/exchange'
|
5
|
+
require 'legion/cli/lex/message'
|
6
|
+
require 'legion/cli/lex/queue'
|
7
|
+
require 'legion/cli/lex/runner'
|
8
|
+
|
9
|
+
module Legion
|
10
|
+
class Cli
|
11
|
+
class LexBuilder < Thor
|
12
|
+
check_unknown_options!
|
13
|
+
include Thor::Actions
|
14
|
+
|
15
|
+
no_commands do
|
16
|
+
def lex
|
17
|
+
Dir.pwd.split('/').last.split('-').last
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
def self.exit_on_failure?
|
22
|
+
true
|
23
|
+
end
|
24
|
+
|
25
|
+
def self.source_root
|
26
|
+
File.dirname(__FILE__)
|
27
|
+
end
|
28
|
+
|
29
|
+
desc 'actor', 'creates and manages actors'
|
30
|
+
subcommand 'actor', Legion::Cli::Lex::Actor
|
31
|
+
|
32
|
+
desc 'exchange', 'creates and manages exchanges'
|
33
|
+
subcommand 'exchange', Legion::Cli::Lex::Exchange
|
34
|
+
|
35
|
+
desc 'messages', 'creates and manages messages'
|
36
|
+
subcommand 'message', Legion::Cli::Lex::Message
|
37
|
+
|
38
|
+
desc 'queue', 'creates and manages queues'
|
39
|
+
subcommand 'queue', Legion::Cli::Lex::Queue
|
40
|
+
|
41
|
+
desc 'runner', 'creates and manages runners'
|
42
|
+
subcommand 'runner', Legion::Cli::Lex::Runner
|
43
|
+
|
44
|
+
desc 'version', 'Display Version'
|
45
|
+
map %w[-v --version] => :version
|
46
|
+
def version
|
47
|
+
say "Legion::CLI #{Legion::Cli::VERSION}"
|
48
|
+
end
|
49
|
+
|
50
|
+
method_option rspec: true
|
51
|
+
method_option pipeline: true
|
52
|
+
method_option git_init: true
|
53
|
+
method_option bundle_install: true
|
54
|
+
desc 'create :name', 'creates a new lex'
|
55
|
+
def create(name)
|
56
|
+
if Dir.pwd.include?('lex-')
|
57
|
+
say('already inside a lex_gen, try moving to a different directory', :red)
|
58
|
+
return nil
|
59
|
+
end
|
60
|
+
|
61
|
+
vars = { filename: "lex-#{name}", class_name: name.capitalize, lex: name }
|
62
|
+
filename = vars[:filename]
|
63
|
+
template('cli/lex/templates/base/gemspec.erb', "#{filename}/#{filename}.gemspec", vars)
|
64
|
+
template('cli/lex/templates/base/gemfile.erb', "#{filename}/Gemfile", vars)
|
65
|
+
template('cli/lex/templates/base/gitignore.erb', "#{filename}/.gitignore", vars)
|
66
|
+
template('cli/lex/templates/base/lic.erb', "#{filename}/LICENSE.txt", vars)
|
67
|
+
template('cli/lex/templates/base/rakefile.erb', "#{filename}/Rakefile", vars)
|
68
|
+
template('cli/lex/templates/base/rubocop.yml.erb', "#{filename}/.rubocop.yml", vars)
|
69
|
+
template('cli/lex/templates/base/readme.md.erb', "#{filename}/README.md", **vars)
|
70
|
+
template('cli/lex/templates/base/lex.erb', "#{filename}/lib/legion/extensions/#{name}.rb", vars)
|
71
|
+
template('cli/lex/templates/base/version.erb', "#{filename}/lib/legion/extensions/#{name}/version.rb", vars)
|
72
|
+
template('cli/lex/templates/base/bitbucket.yml.erb', "#{filename}/bitbucket-pipelines.yml", vars) if options[:pipeline]
|
73
|
+
template('cli/lex/templates/base/spec_helper.rb.erb', "#{filename}/spec/spec_helper.rb", vars)
|
74
|
+
template('cli/lex/templates/base/lex_spec.erb', "#{filename}/spec/legion/#{name}_spec.rb", vars)
|
75
|
+
|
76
|
+
return if !options[:git_init] && !options[:bundle_install]
|
77
|
+
|
78
|
+
run("cd lex_gen-#{filename}")
|
79
|
+
if options[:git_init]
|
80
|
+
run('git init')
|
81
|
+
run('git add .')
|
82
|
+
run('git commit -m \'Initial commit\'')
|
83
|
+
end
|
84
|
+
|
85
|
+
run('bundle update') if options[:bundle_install]
|
86
|
+
end
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
data/lib/legion/service.rb
CHANGED
@@ -20,7 +20,6 @@ module Legion
|
|
20
20
|
require 'legion/cache' if cache
|
21
21
|
|
22
22
|
setup_data if data
|
23
|
-
|
24
23
|
setup_supervision if supervision
|
25
24
|
require 'legion/runner'
|
26
25
|
load_extensions if extensions
|
@@ -30,15 +29,44 @@ module Legion
|
|
30
29
|
end
|
31
30
|
|
32
31
|
def setup_data
|
32
|
+
if RUBY_ENGINE == 'truffleruby'
|
33
|
+
Legion::Logging.error 'Legion::Data does not support truffleruby, please use MRI for any LEX that require it '
|
34
|
+
Legion::Settings[:data][:connected] = false
|
35
|
+
return false
|
36
|
+
end
|
37
|
+
|
33
38
|
require 'legion/data'
|
34
39
|
Legion::Settings.merge_settings(:data, Legion::Data::Settings.default)
|
35
40
|
Legion::Data.setup
|
41
|
+
rescue LoadError
|
42
|
+
Legion::Logging.info 'Legion::Data gem is not installed, please install it manually with gem install legion-data'
|
43
|
+
rescue StandardError => e
|
44
|
+
Legion::Logging.warn "Legion::Data failed to load, starting without it. e: #{e.message}"
|
45
|
+
end
|
46
|
+
|
47
|
+
# noinspection RubyArgCount
|
48
|
+
def default_paths
|
49
|
+
[
|
50
|
+
'/etc/legionio',
|
51
|
+
"#{ENV['home']}/legionio",
|
52
|
+
'~/legionio',
|
53
|
+
'./settings'
|
54
|
+
]
|
36
55
|
end
|
37
56
|
|
38
|
-
def setup_settings
|
57
|
+
def setup_settings(default_dir = __dir__)
|
39
58
|
require 'legion/settings'
|
40
|
-
|
41
|
-
|
59
|
+
config_directory = default_dir
|
60
|
+
default_paths.each do |path|
|
61
|
+
next unless Dir.exist? path
|
62
|
+
|
63
|
+
Legion::Logging.info "Using #{path} for settings"
|
64
|
+
config_directory = path
|
65
|
+
break
|
66
|
+
end
|
67
|
+
|
68
|
+
Legion::Logging.info "Using directory #{config_directory} for settings"
|
69
|
+
Legion::Settings.load(config_dir: config_directory)
|
42
70
|
Legion::Logging.info('Legion::Settings Loaded')
|
43
71
|
end
|
44
72
|
|
@@ -65,10 +93,33 @@ module Legion
|
|
65
93
|
sleep(0.5)
|
66
94
|
Legion::Extensions.shutdown
|
67
95
|
sleep(1)
|
96
|
+
Legion::Data.shutdown if Legion::Settings[:data][:connected]
|
97
|
+
Legion::Cache.shutdown
|
98
|
+
Legion::Transport::Connection.shutdown
|
99
|
+
Legion::Crypt.shutdown
|
100
|
+
end
|
101
|
+
|
102
|
+
def reload
|
103
|
+
Legion::Logging.info 'Legion::Service.reload was called'
|
104
|
+
Legion::Extensions.shutdown
|
105
|
+
sleep(1)
|
68
106
|
Legion::Data.shutdown
|
69
107
|
Legion::Cache.shutdown
|
70
108
|
Legion::Transport::Connection.shutdown
|
71
109
|
Legion::Crypt.shutdown
|
110
|
+
Legion::Settings[:client][:ready] = false
|
111
|
+
|
112
|
+
sleep(5)
|
113
|
+
setup_settings
|
114
|
+
Legion::Crypt.start
|
115
|
+
setup_transport
|
116
|
+
setup_data
|
117
|
+
setup_supervision
|
118
|
+
load_extensions
|
119
|
+
|
120
|
+
Legion::Crypt.cs
|
121
|
+
Legion::Settings[:client][:ready] = true
|
122
|
+
Legion::Logging.info 'Legion has been reloaded'
|
72
123
|
end
|
73
124
|
|
74
125
|
def load_extensions
|
data/lib/legion/version.rb
CHANGED
metadata
CHANGED
@@ -1,17 +1,87 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: legionio
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Esity
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-01-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: concurrent-ruby
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 1.1.7
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 1.1.7
|
13
27
|
- !ruby/object:Gem::Dependency
|
14
28
|
name: concurrent-ruby-ext
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 1.1.7
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 1.1.7
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: daemons
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: 1.3.1
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 1.3.1
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: oj
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '3.10'
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '3.10'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: thor
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '1'
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '1'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: legion-cache
|
15
85
|
requirement: !ruby/object:Gem::Requirement
|
16
86
|
requirements:
|
17
87
|
- - ">="
|
@@ -25,7 +95,21 @@ dependencies:
|
|
25
95
|
- !ruby/object:Gem::Version
|
26
96
|
version: '0'
|
27
97
|
- !ruby/object:Gem::Dependency
|
28
|
-
name: legion-
|
98
|
+
name: legion-crypt
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - ">="
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: 0.2.0
|
104
|
+
type: :runtime
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - ">="
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: 0.2.0
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: legion-exceptions
|
29
113
|
requirement: !ruby/object:Gem::Requirement
|
30
114
|
requirements:
|
31
115
|
- - ">="
|
@@ -39,7 +123,7 @@ dependencies:
|
|
39
123
|
- !ruby/object:Gem::Version
|
40
124
|
version: '0'
|
41
125
|
- !ruby/object:Gem::Dependency
|
42
|
-
name: legion-
|
126
|
+
name: legion-json
|
43
127
|
requirement: !ruby/object:Gem::Requirement
|
44
128
|
requirements:
|
45
129
|
- - ">="
|
@@ -53,7 +137,7 @@ dependencies:
|
|
53
137
|
- !ruby/object:Gem::Version
|
54
138
|
version: '0'
|
55
139
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
140
|
+
name: legion-logging
|
57
141
|
requirement: !ruby/object:Gem::Requirement
|
58
142
|
requirements:
|
59
143
|
- - ">="
|
@@ -67,7 +151,7 @@ dependencies:
|
|
67
151
|
- !ruby/object:Gem::Version
|
68
152
|
version: '0'
|
69
153
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
154
|
+
name: legion-settings
|
71
155
|
requirement: !ruby/object:Gem::Requirement
|
72
156
|
requirements:
|
73
157
|
- - ">="
|
@@ -81,7 +165,21 @@ dependencies:
|
|
81
165
|
- !ruby/object:Gem::Version
|
82
166
|
version: '0'
|
83
167
|
- !ruby/object:Gem::Dependency
|
84
|
-
name:
|
168
|
+
name: legion-transport
|
169
|
+
requirement: !ruby/object:Gem::Requirement
|
170
|
+
requirements:
|
171
|
+
- - ">="
|
172
|
+
- !ruby/object:Gem::Version
|
173
|
+
version: 1.1.8
|
174
|
+
type: :runtime
|
175
|
+
prerelease: false
|
176
|
+
version_requirements: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
178
|
+
- - ">="
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: 1.1.8
|
181
|
+
- !ruby/object:Gem::Dependency
|
182
|
+
name: lex-node
|
85
183
|
requirement: !ruby/object:Gem::Requirement
|
86
184
|
requirements:
|
87
185
|
- - ">="
|
@@ -95,13 +193,13 @@ dependencies:
|
|
95
193
|
- !ruby/object:Gem::Version
|
96
194
|
version: '0'
|
97
195
|
- !ruby/object:Gem::Dependency
|
98
|
-
name:
|
196
|
+
name: codecov
|
99
197
|
requirement: !ruby/object:Gem::Requirement
|
100
198
|
requirements:
|
101
199
|
- - ">="
|
102
200
|
- !ruby/object:Gem::Version
|
103
201
|
version: '0'
|
104
|
-
type: :
|
202
|
+
type: :development
|
105
203
|
prerelease: false
|
106
204
|
version_requirements: !ruby/object:Gem::Requirement
|
107
205
|
requirements:
|
@@ -109,13 +207,13 @@ dependencies:
|
|
109
207
|
- !ruby/object:Gem::Version
|
110
208
|
version: '0'
|
111
209
|
- !ruby/object:Gem::Dependency
|
112
|
-
name:
|
210
|
+
name: legion-data
|
113
211
|
requirement: !ruby/object:Gem::Requirement
|
114
212
|
requirements:
|
115
213
|
- - ">="
|
116
214
|
- !ruby/object:Gem::Version
|
117
215
|
version: '0'
|
118
|
-
type: :
|
216
|
+
type: :development
|
119
217
|
prerelease: false
|
120
218
|
version_requirements: !ruby/object:Gem::Requirement
|
121
219
|
requirements:
|
@@ -123,13 +221,13 @@ dependencies:
|
|
123
221
|
- !ruby/object:Gem::Version
|
124
222
|
version: '0'
|
125
223
|
- !ruby/object:Gem::Dependency
|
126
|
-
name:
|
224
|
+
name: rake
|
127
225
|
requirement: !ruby/object:Gem::Requirement
|
128
226
|
requirements:
|
129
227
|
- - ">="
|
130
228
|
- !ruby/object:Gem::Version
|
131
229
|
version: '0'
|
132
|
-
type: :
|
230
|
+
type: :development
|
133
231
|
prerelease: false
|
134
232
|
version_requirements: !ruby/object:Gem::Requirement
|
135
233
|
requirements:
|
@@ -137,13 +235,13 @@ dependencies:
|
|
137
235
|
- !ruby/object:Gem::Version
|
138
236
|
version: '0'
|
139
237
|
- !ruby/object:Gem::Dependency
|
140
|
-
name:
|
238
|
+
name: rspec
|
141
239
|
requirement: !ruby/object:Gem::Requirement
|
142
240
|
requirements:
|
143
241
|
- - ">="
|
144
242
|
- !ruby/object:Gem::Version
|
145
243
|
version: '0'
|
146
|
-
type: :
|
244
|
+
type: :development
|
147
245
|
prerelease: false
|
148
246
|
version_requirements: !ruby/object:Gem::Requirement
|
149
247
|
requirements:
|
@@ -151,13 +249,13 @@ dependencies:
|
|
151
249
|
- !ruby/object:Gem::Version
|
152
250
|
version: '0'
|
153
251
|
- !ruby/object:Gem::Dependency
|
154
|
-
name:
|
252
|
+
name: rspec_junit_formatter
|
155
253
|
requirement: !ruby/object:Gem::Requirement
|
156
254
|
requirements:
|
157
255
|
- - ">="
|
158
256
|
- !ruby/object:Gem::Version
|
159
257
|
version: '0'
|
160
|
-
type: :
|
258
|
+
type: :development
|
161
259
|
prerelease: false
|
162
260
|
version_requirements: !ruby/object:Gem::Requirement
|
163
261
|
requirements:
|
@@ -165,13 +263,13 @@ dependencies:
|
|
165
263
|
- !ruby/object:Gem::Version
|
166
264
|
version: '0'
|
167
265
|
- !ruby/object:Gem::Dependency
|
168
|
-
name:
|
266
|
+
name: rubocop
|
169
267
|
requirement: !ruby/object:Gem::Requirement
|
170
268
|
requirements:
|
171
269
|
- - ">="
|
172
270
|
- !ruby/object:Gem::Version
|
173
271
|
version: '0'
|
174
|
-
type: :
|
272
|
+
type: :development
|
175
273
|
prerelease: false
|
176
274
|
version_requirements: !ruby/object:Gem::Requirement
|
177
275
|
requirements:
|
@@ -179,13 +277,13 @@ dependencies:
|
|
179
277
|
- !ruby/object:Gem::Version
|
180
278
|
version: '0'
|
181
279
|
- !ruby/object:Gem::Dependency
|
182
|
-
name:
|
280
|
+
name: rubocop-rake
|
183
281
|
requirement: !ruby/object:Gem::Requirement
|
184
282
|
requirements:
|
185
283
|
- - ">="
|
186
284
|
- !ruby/object:Gem::Version
|
187
285
|
version: '0'
|
188
|
-
type: :
|
286
|
+
type: :development
|
189
287
|
prerelease: false
|
190
288
|
version_requirements: !ruby/object:Gem::Requirement
|
191
289
|
requirements:
|
@@ -193,13 +291,13 @@ dependencies:
|
|
193
291
|
- !ruby/object:Gem::Version
|
194
292
|
version: '0'
|
195
293
|
- !ruby/object:Gem::Dependency
|
196
|
-
name:
|
294
|
+
name: rubocop-rspec
|
197
295
|
requirement: !ruby/object:Gem::Requirement
|
198
296
|
requirements:
|
199
297
|
- - ">="
|
200
298
|
- !ruby/object:Gem::Version
|
201
299
|
version: '0'
|
202
|
-
type: :
|
300
|
+
type: :development
|
203
301
|
prerelease: false
|
204
302
|
version_requirements: !ruby/object:Gem::Requirement
|
205
303
|
requirements:
|
@@ -207,13 +305,13 @@ dependencies:
|
|
207
305
|
- !ruby/object:Gem::Version
|
208
306
|
version: '0'
|
209
307
|
- !ruby/object:Gem::Dependency
|
210
|
-
name:
|
308
|
+
name: simplecov
|
211
309
|
requirement: !ruby/object:Gem::Requirement
|
212
310
|
requirements:
|
213
311
|
- - ">="
|
214
312
|
- !ruby/object:Gem::Version
|
215
313
|
version: '0'
|
216
|
-
type: :
|
314
|
+
type: :development
|
217
315
|
prerelease: false
|
218
316
|
version_requirements: !ruby/object:Gem::Requirement
|
219
317
|
requirements:
|
@@ -221,7 +319,7 @@ dependencies:
|
|
221
319
|
- !ruby/object:Gem::Version
|
222
320
|
version: '0'
|
223
321
|
- !ruby/object:Gem::Dependency
|
224
|
-
name:
|
322
|
+
name: lex-conditioner
|
225
323
|
requirement: !ruby/object:Gem::Requirement
|
226
324
|
requirements:
|
227
325
|
- - ">="
|
@@ -235,7 +333,7 @@ dependencies:
|
|
235
333
|
- !ruby/object:Gem::Version
|
236
334
|
version: '0'
|
237
335
|
- !ruby/object:Gem::Dependency
|
238
|
-
name:
|
336
|
+
name: lex-health
|
239
337
|
requirement: !ruby/object:Gem::Requirement
|
240
338
|
requirements:
|
241
339
|
- - ">="
|
@@ -249,7 +347,7 @@ dependencies:
|
|
249
347
|
- !ruby/object:Gem::Version
|
250
348
|
version: '0'
|
251
349
|
- !ruby/object:Gem::Dependency
|
252
|
-
name:
|
350
|
+
name: lex-http
|
253
351
|
requirement: !ruby/object:Gem::Requirement
|
254
352
|
requirements:
|
255
353
|
- - ">="
|
@@ -263,7 +361,7 @@ dependencies:
|
|
263
361
|
- !ruby/object:Gem::Version
|
264
362
|
version: '0'
|
265
363
|
- !ruby/object:Gem::Dependency
|
266
|
-
name:
|
364
|
+
name: lex-lex
|
267
365
|
requirement: !ruby/object:Gem::Requirement
|
268
366
|
requirements:
|
269
367
|
- - ">="
|
@@ -277,7 +375,7 @@ dependencies:
|
|
277
375
|
- !ruby/object:Gem::Version
|
278
376
|
version: '0'
|
279
377
|
- !ruby/object:Gem::Dependency
|
280
|
-
name:
|
378
|
+
name: lex-log
|
281
379
|
requirement: !ruby/object:Gem::Requirement
|
282
380
|
requirements:
|
283
381
|
- - ">="
|
@@ -291,7 +389,7 @@ dependencies:
|
|
291
389
|
- !ruby/object:Gem::Version
|
292
390
|
version: '0'
|
293
391
|
- !ruby/object:Gem::Dependency
|
294
|
-
name:
|
392
|
+
name: lex-scheduler
|
295
393
|
requirement: !ruby/object:Gem::Requirement
|
296
394
|
requirements:
|
297
395
|
- - ">="
|
@@ -305,7 +403,21 @@ dependencies:
|
|
305
403
|
- !ruby/object:Gem::Version
|
306
404
|
version: '0'
|
307
405
|
- !ruby/object:Gem::Dependency
|
308
|
-
name:
|
406
|
+
name: lex-tasker
|
407
|
+
requirement: !ruby/object:Gem::Requirement
|
408
|
+
requirements:
|
409
|
+
- - ">="
|
410
|
+
- !ruby/object:Gem::Version
|
411
|
+
version: '0'
|
412
|
+
type: :development
|
413
|
+
prerelease: false
|
414
|
+
version_requirements: !ruby/object:Gem::Requirement
|
415
|
+
requirements:
|
416
|
+
- - ">="
|
417
|
+
- !ruby/object:Gem::Version
|
418
|
+
version: '0'
|
419
|
+
- !ruby/object:Gem::Dependency
|
420
|
+
name: lex-transformer
|
309
421
|
requirement: !ruby/object:Gem::Requirement
|
310
422
|
requirements:
|
311
423
|
- - ">="
|
@@ -323,6 +435,8 @@ email:
|
|
323
435
|
- matthewdiverson@gmail.com
|
324
436
|
executables:
|
325
437
|
- legion
|
438
|
+
- legionio
|
439
|
+
- lex_gen
|
326
440
|
extensions: []
|
327
441
|
extra_rdoc_files: []
|
328
442
|
files:
|
@@ -331,26 +445,54 @@ files:
|
|
331
445
|
- ".rspec"
|
332
446
|
- ".rubocop.yml"
|
333
447
|
- CHANGELOG.md
|
448
|
+
- Dockerfile
|
334
449
|
- Gemfile
|
335
450
|
- LICENSE.txt
|
336
451
|
- README.md
|
337
452
|
- Rakefile
|
338
|
-
- bin/console
|
339
|
-
- bin/legion
|
340
|
-
- bin/setup
|
341
|
-
- bin/test
|
342
453
|
- bitbucket-pipelines.yml
|
454
|
+
- docker_deploy.rb
|
343
455
|
- exe/legion
|
344
|
-
-
|
456
|
+
- exe/legionio
|
457
|
+
- exe/lex_gen
|
458
|
+
- legionio.gemspec
|
345
459
|
- lib/legion.rb
|
346
|
-
- lib/legion/
|
347
|
-
- lib/legion/
|
348
|
-
- lib/legion/
|
349
|
-
- lib/legion/
|
350
|
-
- lib/legion/
|
351
|
-
- lib/legion/
|
352
|
-
- lib/legion/
|
353
|
-
- lib/legion/
|
460
|
+
- lib/legion/cli.rb
|
461
|
+
- lib/legion/cli/chain.rb
|
462
|
+
- lib/legion/cli/cohort.rb
|
463
|
+
- lib/legion/cli/function.rb
|
464
|
+
- lib/legion/cli/lex/actor.rb
|
465
|
+
- lib/legion/cli/lex/exchange.rb
|
466
|
+
- lib/legion/cli/lex/message.rb
|
467
|
+
- lib/legion/cli/lex/queue.rb
|
468
|
+
- lib/legion/cli/lex/runner.rb
|
469
|
+
- lib/legion/cli/lex/templates/actor.erb
|
470
|
+
- lib/legion/cli/lex/templates/actor_spec.erb
|
471
|
+
- lib/legion/cli/lex/templates/base/bitbucket.yml.erb
|
472
|
+
- lib/legion/cli/lex/templates/base/gemfile.erb
|
473
|
+
- lib/legion/cli/lex/templates/base/gemspec.erb
|
474
|
+
- lib/legion/cli/lex/templates/base/gitignore.erb
|
475
|
+
- lib/legion/cli/lex/templates/base/lex.erb
|
476
|
+
- lib/legion/cli/lex/templates/base/lex_spec.erb
|
477
|
+
- lib/legion/cli/lex/templates/base/lic.erb
|
478
|
+
- lib/legion/cli/lex/templates/base/rakefile.erb
|
479
|
+
- lib/legion/cli/lex/templates/base/readme.md.erb
|
480
|
+
- lib/legion/cli/lex/templates/base/rubocop.yml.erb
|
481
|
+
- lib/legion/cli/lex/templates/base/spec_helper.rb.erb
|
482
|
+
- lib/legion/cli/lex/templates/base/version.erb
|
483
|
+
- lib/legion/cli/lex/templates/exchange.erb
|
484
|
+
- lib/legion/cli/lex/templates/exchange_spec.erb
|
485
|
+
- lib/legion/cli/lex/templates/message.erb
|
486
|
+
- lib/legion/cli/lex/templates/message_spec.erb
|
487
|
+
- lib/legion/cli/lex/templates/queue.erb
|
488
|
+
- lib/legion/cli/lex/templates/queue_helper.erb
|
489
|
+
- lib/legion/cli/lex/templates/queue_spec.erb
|
490
|
+
- lib/legion/cli/lex/templates/runner.erb
|
491
|
+
- lib/legion/cli/lex/templates/runner_spec.erb
|
492
|
+
- lib/legion/cli/relationship.rb
|
493
|
+
- lib/legion/cli/task.rb
|
494
|
+
- lib/legion/cli/trigger.rb
|
495
|
+
- lib/legion/cli/version.rb
|
354
496
|
- lib/legion/extensions.rb
|
355
497
|
- lib/legion/extensions/actors/base.rb
|
356
498
|
- lib/legion/extensions/actors/every.rb
|
@@ -376,6 +518,7 @@ files:
|
|
376
518
|
- lib/legion/extensions/helpers/task.rb
|
377
519
|
- lib/legion/extensions/helpers/transport.rb
|
378
520
|
- lib/legion/extensions/transport.rb
|
521
|
+
- lib/legion/lex.rb
|
379
522
|
- lib/legion/process.rb
|
380
523
|
- lib/legion/runner.rb
|
381
524
|
- lib/legion/runner/log.rb
|
@@ -383,12 +526,14 @@ files:
|
|
383
526
|
- lib/legion/service.rb
|
384
527
|
- lib/legion/supervision.rb
|
385
528
|
- lib/legion/version.rb
|
386
|
-
- settings/client.json
|
387
529
|
homepage: https://bitbucket.org/legion-io/legion/
|
388
530
|
licenses:
|
389
531
|
- MIT
|
390
|
-
metadata:
|
391
|
-
|
532
|
+
metadata:
|
533
|
+
source_code_uri: https://bitbucket.org/legion-io/legion/src/master/
|
534
|
+
documentation_uri: https://legionio.atlassian.net/wiki/spaces/LEGION/overview
|
535
|
+
bug_tracker_uri: https://legionio.atlassian.net/browse/LEG
|
536
|
+
post_install_message:
|
392
537
|
rdoc_options: []
|
393
538
|
require_paths:
|
394
539
|
- lib
|
@@ -403,8 +548,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
403
548
|
- !ruby/object:Gem::Version
|
404
549
|
version: '0'
|
405
550
|
requirements: []
|
406
|
-
rubygems_version: 3.1.
|
407
|
-
signing_key:
|
551
|
+
rubygems_version: 3.1.4
|
552
|
+
signing_key:
|
408
553
|
specification_version: 4
|
409
554
|
summary: Legion Core Software to string it all together
|
410
555
|
test_files: []
|