lex-health 0.1.0 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c4be3a4b0f0ef799e3fc2db38ea95e1d5522e184fd0433bce64ad30905543142
4
- data.tar.gz: 5095b66029faf430a2b2f995ab1a77e7ca37cf8382bf7da47e44a9bdb1f949bf
3
+ metadata.gz: 85c20c15c909246e2db7095731a7e612ae85774ee213f20551b14e25ddaa10e9
4
+ data.tar.gz: 803eb25ae8ef49107402cbc64a942888a2fca16f97238910773c32c1f2befdfa
5
5
  SHA512:
6
- metadata.gz: 8729e7a2242b0c6e7adc8474717a2e43b1d2b7473669a1d8b7a3aa05ac1640e5ad49308b52386df84fa65922013d9f819ce798c7c5fcdc5c86f9b78721c16db0
7
- data.tar.gz: 5bff8c5455b5b85ff769d4dae2b4aa57a97e0664f354ee872d969a23dadc41c3af11744ea5799eb05c043713885cbb8ff3867c59d72fa79d75d4fb12592ef922
6
+ metadata.gz: e203fbab722e67a7d003a691184ba1fa4e61a03a77ae3b6ec99f8ac247b3704aaf21c0430f749e68e20400bdc7f4bb30dc6e19100ac5c4044c86f0bf88080348
7
+ data.tar.gz: 255941157ba3c6fae1b807876b7d34ff04894cd2f4ec6b097a71b263fe213a6fdd1b3e0744b7de61c870278902ef6ab2179817598dfaa95ebc542d8e75f596ea
data/.rubocop.yml CHANGED
@@ -6,17 +6,18 @@ Metrics/ClassLength:
6
6
  Max: 1500
7
7
  Metrics/BlockLength:
8
8
  Max: 50
9
+ Metrics/AbcSize:
10
+ Max: 25
9
11
  Layout/SpaceAroundEqualsInParameterDefault:
10
12
  EnforcedStyle: space
11
13
  Style/SymbolArray:
12
14
  Enabled: true
13
- Layout/HashAlignment:
14
- EnforcedHashRocketStyle: table
15
- EnforcedColonStyle: table
16
15
  Style/Documentation:
17
16
  Enabled: false
18
17
  AllCops:
19
18
  TargetRubyVersion: 2.5
19
+ NewCops: enable
20
+ SuggestExtensions: false
20
21
  Style/FrozenStringLiteralComment:
21
22
  Enabled: false
22
23
  Naming/FileName:
data/Dockerfile ADDED
@@ -0,0 +1,8 @@
1
+ FROM legionio/legion:latest
2
+ LABEL maintainer="Matthew Iverson <matthewdiverson@gmail.com>"
3
+
4
+ RUN apk update && apk add build-base tzdata postgresql-dev mysql-client mariadb-dev tzdata gcc git
5
+
6
+ COPY . ./
7
+ RUN gem install lex-health legion-data --no-document --no-prerelease
8
+ CMD ruby $(which legionio)
data/Gemfile.lock CHANGED
@@ -1,74 +1,59 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- lex-health (0.1.0)
4
+ lex-health (0.1.4)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
8
8
  specs:
9
- ast (2.4.0)
10
- codecov (0.1.16)
11
- json
12
- simplecov
13
- url
14
- diff-lcs (1.3)
15
- docile (1.3.2)
16
- jaro_winkler (1.5.4)
17
- json (2.3.0)
18
- parallel (1.19.1)
19
- parser (2.7.0.4)
20
- ast (~> 2.4.0)
9
+ ast (2.4.2)
10
+ diff-lcs (1.4.4)
11
+ parallel (1.20.1)
12
+ parser (3.0.0.0)
13
+ ast (~> 2.4.1)
21
14
  rainbow (3.0.0)
22
- rake (13.0.1)
15
+ rake (13.0.3)
16
+ regexp_parser (2.1.1)
23
17
  rexml (3.2.4)
24
- rspec (3.9.0)
25
- rspec-core (~> 3.9.0)
26
- rspec-expectations (~> 3.9.0)
27
- rspec-mocks (~> 3.9.0)
28
- rspec-core (3.9.1)
29
- rspec-support (~> 3.9.1)
30
- rspec-expectations (3.9.0)
18
+ rspec (3.10.0)
19
+ rspec-core (~> 3.10.0)
20
+ rspec-expectations (~> 3.10.0)
21
+ rspec-mocks (~> 3.10.0)
22
+ rspec-core (3.10.1)
23
+ rspec-support (~> 3.10.0)
24
+ rspec-expectations (3.10.1)
31
25
  diff-lcs (>= 1.2.0, < 2.0)
32
- rspec-support (~> 3.9.0)
33
- rspec-mocks (3.9.1)
26
+ rspec-support (~> 3.10.0)
27
+ rspec-mocks (3.10.2)
34
28
  diff-lcs (>= 1.2.0, < 2.0)
35
- rspec-support (~> 3.9.0)
36
- rspec-support (3.9.2)
37
- rubocop (0.80.1)
38
- jaro_winkler (~> 1.5.1)
29
+ rspec-support (~> 3.10.0)
30
+ rspec-support (3.10.2)
31
+ rubocop (1.11.0)
39
32
  parallel (~> 1.10)
40
- parser (>= 2.7.0.1)
33
+ parser (>= 3.0.0.0)
41
34
  rainbow (>= 2.2.2, < 4.0)
35
+ regexp_parser (>= 1.8, < 3.0)
42
36
  rexml
37
+ rubocop-ast (>= 1.2.0, < 2.0)
43
38
  ruby-progressbar (~> 1.7)
44
- unicode-display_width (>= 1.4.0, < 1.7)
45
- rubocop-md (0.3.1)
46
- rubocop (~> 0.60)
47
- rubocop-performance (1.5.2)
48
- rubocop (>= 0.71.0)
49
- rubocop-rspec (1.38.1)
50
- rubocop (>= 0.68.1)
51
- ruby-progressbar (1.10.1)
52
- simplecov (0.18.5)
53
- docile (~> 1.1)
54
- simplecov-html (~> 0.11)
55
- simplecov-html (0.12.2)
56
- unicode-display_width (1.6.1)
57
- url (0.3.2)
39
+ unicode-display_width (>= 1.4.0, < 3.0)
40
+ rubocop-ast (1.4.1)
41
+ parser (>= 2.7.1.5)
42
+ rubocop-rspec (2.2.0)
43
+ rubocop (~> 1.0)
44
+ rubocop-ast (>= 1.1.0)
45
+ ruby-progressbar (1.11.0)
46
+ unicode-display_width (2.0.0)
58
47
 
59
48
  PLATFORMS
60
49
  ruby
61
50
 
62
51
  DEPENDENCIES
63
- bundler
64
- codecov
65
52
  lex-health!
66
53
  rake
67
54
  rspec
68
55
  rubocop
69
- rubocop-md
70
- rubocop-performance
71
56
  rubocop-rspec
72
57
 
73
58
  BUNDLED WITH
74
- 2.1.4
59
+ 2.2.6
data/README.md CHANGED
@@ -1,38 +1,25 @@
1
1
  # Legion::Extensions::Health
2
2
 
3
- Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/legion/extensions/health`. To experiment with that code, run `bin/console` for an interactive prompt.
4
-
5
- TODO: Delete this and the text above, and describe your gem
3
+ A Legion extension that subscribes to `Exchange: nodes` and then updates the database with node status messages
6
4
 
7
5
  ## Installation
8
6
 
9
7
  Add this line to your application's Gemfile:
10
8
 
11
9
  ```ruby
12
- gem 'legion-extensions-health'
10
+ gem 'lex-health'
13
11
  ```
14
12
 
15
13
  And then execute:
16
14
 
17
- $ bundle
15
+ $ bundle install
18
16
 
19
17
  Or install it yourself as:
20
18
 
21
- $ gem install legion-extensions-health
19
+ $ gem install lex-health
22
20
 
23
21
  ## Usage
24
-
25
- TODO: Write usage instructions here
26
-
27
- ## Development
28
-
29
- After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
30
-
31
- To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
32
-
33
- ## Contributing
34
-
35
- Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/legion-extensions-health.
22
+ *To be added*
36
23
 
37
24
  ## License
38
25
 
@@ -0,0 +1,21 @@
1
+ image: ruby:2.7
2
+
3
+ pipelines:
4
+ tags:
5
+ "v*":
6
+ - step:
7
+ name: Push to RubyGems
8
+ deployment: RubyGems
9
+ script:
10
+ - gem install gem-release
11
+ - (umask 077 ; echo $gem_creds | base64 --decode > ~/.gem/credentials)
12
+ - gem release
13
+ artifacts:
14
+ - pkg/**
15
+ - step:
16
+ name: Push to Docker
17
+ deployment: Docker
18
+ script:
19
+ - 'apt-get update'
20
+ - 'apt-get install -y docker-ce'
21
+ - './docker_deploy.rb'
data/docker_deploy.rb ADDED
@@ -0,0 +1,13 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ name = 'health'
4
+ require "./lib/legion/extensions/#{name}/version"
5
+ version = Legion::Extensions::Health::VERSION
6
+
7
+ puts "Building docker image for Legion v#{version}"
8
+ system("docker build --tag legionio/lex-#{name}:v#{version} .")
9
+ puts 'Pushing to hub.docker.com'
10
+ system("docker push legionio/lex-#{name}:v#{version}")
11
+ system("docker tag legionio/lex-#{name}:v#{version} legionio/lex-#{name}:latest")
12
+ system("docker push legionio/lex-#{name}:latest")
13
+ puts 'completed'
@@ -9,29 +9,25 @@ Gem::Specification.new do |spec|
9
9
  spec.email = ['matthewdiverson@gmail.com']
10
10
 
11
11
  spec.summary = 'Legion::Extensions::Health'
12
- spec.description = 'Used to read heartbeats and update the db'
12
+ spec.description = 'Used to read heartbeats and updates the db'
13
13
  spec.homepage = 'https://bitbucket.org/legion-io/lex-health'
14
14
  spec.license = 'MIT'
15
+ spec.required_ruby_version = Gem::Requirement.new('>= 2.5.0')
15
16
 
16
17
  spec.metadata['homepage_uri'] = spec.homepage
17
- spec.metadata['source_code_uri'] = 'https://bitbucket.org/legion-io/lex-heartbeat'
18
- spec.metadata['changelog_uri'] = 'https://bitbucket.org/legion-io/lex-heartbeat/CHANGELOG.md'
18
+ spec.metadata['source_code_uri'] = 'https://bitbucket.org/legion-io/lex-health'
19
+ spec.metadata['changelog_uri'] = 'https://bitbucket.org/legion-io/lex-health/CHANGELOG.md'
20
+ spec.metadata['documentation_uri'] = 'https://legionio.atlassian.net/wiki/spaces/LEX/pages/612171777/LEX+Health'
21
+ spec.metadata['changelog_uri'] = 'https://legionio.atlassian.net/wiki/spaces/LEX/pages/612270081/'
22
+ spec.metadata['bug_tracker_uri'] = 'https://bitbucket.org/legion-io/lex-health/issues'
19
23
 
20
- # Specify which files should be added to the gem when it is released.
21
- # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
22
24
  spec.files = Dir.chdir(File.expand_path(__dir__)) do
23
25
  `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
24
26
  end
25
- spec.bindir = 'exe'
26
- spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
27
27
  spec.require_paths = ['lib']
28
28
 
29
- spec.add_development_dependency 'bundler'
30
- spec.add_development_dependency 'codecov'
31
29
  spec.add_development_dependency 'rake'
32
30
  spec.add_development_dependency 'rspec'
33
31
  spec.add_development_dependency 'rubocop'
34
- spec.add_development_dependency 'rubocop-md'
35
- spec.add_development_dependency 'rubocop-performance'
36
32
  spec.add_development_dependency 'rubocop-rspec'
37
33
  end
@@ -1,10 +1,17 @@
1
1
  require 'legion/extensions/health/version'
2
- require 'legion/extensions'
3
2
 
4
3
  module Legion
5
4
  module Extensions
6
5
  module Health
7
- extend Legion::Extensions::Core
6
+ extend Legion::Extensions::Core if Legion::Extensions.const_defined? :Core
7
+
8
+ def self.data_required?
9
+ true
10
+ end
11
+
12
+ def data_required?
13
+ true
14
+ end
8
15
  end
9
16
  end
10
17
  end
@@ -3,24 +3,27 @@ module Legion::Extensions::Health
3
3
  module Health
4
4
  include Legion::Extensions::Helpers::Lex
5
5
 
6
- def self.update(hostname:, **opts)
7
- item = Legion::Data::Model::Node.where(name: hostname).first
6
+ def update(hostname:, **opts)
7
+ item = Legion::Data::Model::Node[name: hostname]
8
8
 
9
- if item.nil?
10
- return { success: true, hostname: hostname, **opts } if insert(hostname: hostname, **opts)
11
-
12
- return { success: false, hostname: hostname, **opts }
13
- end
9
+ return { success: insert(hostname: hostname, **opts), hostname: hostname, **opts } if item.nil?
14
10
 
15
11
  if opts.key?(:timestamp) && !item.values[:updated].nil? && item.values[:updated] > Time.parse(opts[:timestamp])
16
- return { success: false, reason: 'entry already updated', hostname: hostname, db_updated: item.values[:updated], **opts }
12
+ return { success: false,
13
+ reason: 'entry already updated',
14
+ hostname: hostname,
15
+ db_updated: item.values[:updated],
16
+ **opts }
17
17
  end
18
18
 
19
- item.update(active: 1, status: opts[:status], name: hostname)
20
- { success: true, hostname: hostname, **opts }
19
+ {
20
+ success: item.update(active: 1, status: opts[:status], name: hostname, updated: Sequel::CURRENT_TIMESTAMP),
21
+ hostname: hostname,
22
+ **opts
23
+ }
21
24
  end
22
25
 
23
- def self.insert(hostname:, status: 'unknown', **opts)
26
+ def insert(hostname:, status: 'unknown', **opts)
24
27
  insert = { active: 1, status: status, name: hostname }
25
28
  insert[:datacenter_id] = opts[:datacenter_id] if opts.key? :datacenter_id
26
29
  insert[:environment_id] = opts[:environment_id] if opts.key? :environment_id
@@ -29,8 +32,7 @@ module Legion::Extensions::Health
29
32
  { success: true, hostname: hostname, node_id: Legion::Data::Model::Node.insert(insert), **insert }
30
33
  end
31
34
 
32
- def self.delete(node_id:, **_opts)
33
- # Legion::Data::Model::Node.where(payload[:key].to_sym == payload[:value]).delete
35
+ def delete(node_id:, **_opts)
34
36
  Legion::Data::Model::Node[node_id].delete
35
37
  { success: true, node_id: node_id }
36
38
  end
@@ -5,16 +5,22 @@ module Legion::Extensions::Health
5
5
  module Watchdog
6
6
  include Legion::Extensions::Helpers::Lex
7
7
 
8
- def expire(**_opts)
8
+ def expire(expire_time: 60, **_opts)
9
9
  nodes = []
10
10
  Legion::Data::Model::Node
11
11
  .where(status: 'healthy')
12
- .where(Sequel.lit('updated <= DATE_SUB(SYSDATE(), INTERVAL 60 SECOND)'))
12
+ .where(
13
+ Sequel.lit(
14
+ "updated <= DATE_SUB(SYSDATE(), INTERVAL #{expire_time} SECOND)
15
+ OR
16
+ (updated is null and created <= DATE_SUB(SYSDATE(), INTERVAL #{expire_time} SECOND))"
17
+ )
18
+ )
13
19
  .where(active: true)
14
20
  .each do |node|
15
- Legion::Transport::Messages::NodeHealth.new(status: 'unknown',
16
- node_id: node.values[:id],
17
- hostname: node.values[:name],
21
+ Legion::Transport::Messages::NodeHealth.new(status: 'unknown',
22
+ node_id: node.values[:id],
23
+ hostname: node.values[:name],
18
24
  timestamp: node.values[:updated]).publish
19
25
  nodes.push(node.values[:id])
20
26
  end
@@ -8,12 +8,6 @@ module Legion::Extensions::Health::Transport::Messages
8
8
  5000
9
9
  end
10
10
 
11
- # def message
12
- # hash = { hostname: Socket.gethostname, pid: Process.pid, timestamp: Time.now }
13
- # hash[:status] = @options[:status].nil? ? 'healthy' : @options[:status]
14
- # hash
15
- # end
16
-
17
11
  def validate
18
12
  raise 'status should be a string' unless @options[:status].is_a?(String) || @options[:status].nil?
19
13
 
@@ -7,7 +7,13 @@ module Legion::Extensions::Health
7
7
  end
8
8
 
9
9
  def queue_options
10
- { arguments: { 'x-single-active-consumer': true, 'x-dead-letter-exchange': 'node.dlx' }, auto_delete: false }
10
+ {
11
+ arguments: {
12
+ 'x-single-active-consumer': true,
13
+ 'x-dead-letter-exchange': 'node.dlx'
14
+ },
15
+ auto_delete: false
16
+ }
11
17
  end
12
18
  end
13
19
  end
@@ -1,7 +1,7 @@
1
1
  module Legion
2
2
  module Extensions
3
3
  module Health
4
- VERSION = '0.1.0'.freeze
4
+ VERSION = '0.1.5'.freeze
5
5
  end
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,43 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lex-health
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Miverson
8
8
  autorequire:
9
- bindir: exe
9
+ bindir: bin
10
10
  cert_chain: []
11
- date: 2020-03-26 00:00:00.000000000 Z
11
+ date: 2021-03-03 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: bundler
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: '0'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- version: '0'
27
- - !ruby/object:Gem::Dependency
28
- name: codecov
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: '0'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- version: '0'
41
13
  - !ruby/object:Gem::Dependency
42
14
  name: rake
43
15
  requirement: !ruby/object:Gem::Requirement
@@ -80,34 +52,6 @@ dependencies:
80
52
  - - ">="
81
53
  - !ruby/object:Gem::Version
82
54
  version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: rubocop-md
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: '0'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: rubocop-performance
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: '0'
111
55
  - !ruby/object:Gem::Dependency
112
56
  name: rubocop-rspec
113
57
  requirement: !ruby/object:Gem::Requirement
@@ -122,7 +66,7 @@ dependencies:
122
66
  - - ">="
123
67
  - !ruby/object:Gem::Version
124
68
  version: '0'
125
- description: Used to read heartbeats and update the db
69
+ description: Used to read heartbeats and updates the db
126
70
  email:
127
71
  - matthewdiverson@gmail.com
128
72
  executables: []
@@ -131,22 +75,17 @@ extra_rdoc_files: []
131
75
  files:
132
76
  - ".circleci/config.yml"
133
77
  - ".gitignore"
134
- - ".idea/.rakeTasks"
135
- - ".idea/lex-health.iml"
136
- - ".idea/misc.xml"
137
- - ".idea/modules.xml"
138
- - ".idea/vagrant.xml"
139
- - ".idea/workspace.xml"
140
78
  - ".rspec"
141
79
  - ".rubocop.yml"
80
+ - Dockerfile
142
81
  - Gemfile
143
82
  - Gemfile.lock
144
83
  - LICENSE.txt
145
84
  - README.md
146
85
  - Rakefile
147
- - bin/console
148
- - bin/setup
149
- - legion-extensions-health.gemspec
86
+ - bitbucket-pipelines.yml
87
+ - docker_deploy.rb
88
+ - lex-health.gemspec
150
89
  - lib/legion/extensions/health.rb
151
90
  - lib/legion/extensions/health/actors/health.rb
152
91
  - lib/legion/extensions/health/actors/watchdog.rb
@@ -161,8 +100,10 @@ licenses:
161
100
  - MIT
162
101
  metadata:
163
102
  homepage_uri: https://bitbucket.org/legion-io/lex-health
164
- source_code_uri: https://bitbucket.org/legion-io/lex-heartbeat
165
- changelog_uri: https://bitbucket.org/legion-io/lex-heartbeat/CHANGELOG.md
103
+ source_code_uri: https://bitbucket.org/legion-io/lex-health
104
+ changelog_uri: https://legionio.atlassian.net/wiki/spaces/LEX/pages/612270081/
105
+ documentation_uri: https://legionio.atlassian.net/wiki/spaces/LEX/pages/612171777/LEX+Health
106
+ bug_tracker_uri: https://bitbucket.org/legion-io/lex-health/issues
166
107
  post_install_message:
167
108
  rdoc_options: []
168
109
  require_paths:
@@ -171,14 +112,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
171
112
  requirements:
172
113
  - - ">="
173
114
  - !ruby/object:Gem::Version
174
- version: '0'
115
+ version: 2.5.0
175
116
  required_rubygems_version: !ruby/object:Gem::Requirement
176
117
  requirements:
177
118
  - - ">="
178
119
  - !ruby/object:Gem::Version
179
120
  version: '0'
180
121
  requirements: []
181
- rubygems_version: 3.0.8
122
+ rubygems_version: 3.1.4
182
123
  signing_key:
183
124
  specification_version: 4
184
125
  summary: Legion::Extensions::Health
data/.idea/.rakeTasks DELETED
@@ -1,7 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <Settings><!--This file was automatically generated by Ruby plugin.
3
- You are allowed to:
4
- 1. Remove rake task
5
- 2. Add existing rake tasks
6
- To add existing rake tasks automatically delete this file and reload the project.
7
- --><RakeGroup description="" fullCmd="" taksId="rake"><RakeTask description="Build lex-health-0.1.0.gem into the pkg directory" fullCmd="build" taksId="build" /><RakeTask description="Remove any temporary products" fullCmd="clean" taksId="clean" /><RakeTask description="Remove any generated files" fullCmd="clobber" taksId="clobber" /><RakeTask description="Build and install lex-health-0.1.0.gem into system gems" fullCmd="install" taksId="install" /><RakeGroup description="" fullCmd="" taksId="install"><RakeTask description="Build and install lex-health-0.1.0.gem into system gems without network access" fullCmd="install:local" taksId="local" /></RakeGroup><RakeTask description="Create tag v0.1.0 and build and push lex-health-0.1.0.gem to rubygems.org" fullCmd="release[remote]" taksId="release[remote]" /><RakeTask description="Run RSpec code examples" fullCmd="spec" taksId="spec" /><RakeTask description="" fullCmd="default" taksId="default" /><RakeTask description="" fullCmd="release" taksId="release" /><RakeGroup description="" fullCmd="" taksId="release"><RakeTask description="" fullCmd="release:guard_clean" taksId="guard_clean" /><RakeTask description="" fullCmd="release:rubygem_push" taksId="rubygem_push" /><RakeTask description="" fullCmd="release:source_control_push" taksId="source_control_push" /></RakeGroup></RakeGroup></Settings>
data/.idea/lex-health.iml DELETED
@@ -1,38 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <module type="RUBY_MODULE" version="4">
3
- <component name="ModuleRunConfigurationManager">
4
- <shared />
5
- </component>
6
- <component name="NewModuleRootManager">
7
- <content url="file://$MODULE_DIR$" />
8
- <orderEntry type="inheritedJdk" />
9
- <orderEntry type="sourceFolder" forTests="false" />
10
- <orderEntry type="library" scope="PROVIDED" name="ast (v2.4.0, RVM: ruby-2.6.3) [gem]" level="application" />
11
- <orderEntry type="library" scope="PROVIDED" name="bundler (v2.1.4, RVM: ruby-2.6.3) [gem]" level="application" />
12
- <orderEntry type="library" scope="PROVIDED" name="chef (v15.8.23, RVM: ruby-2.6.3) [gem]" level="application" />
13
- <orderEntry type="library" scope="PROVIDED" name="codecov (v0.1.16, RVM: ruby-2.6.3) [gem]" level="application" />
14
- <orderEntry type="library" scope="PROVIDED" name="diff-lcs (v1.3, RVM: ruby-2.6.3) [gem]" level="application" />
15
- <orderEntry type="library" scope="PROVIDED" name="docile (v1.3.2, RVM: ruby-2.6.3) [gem]" level="application" />
16
- <orderEntry type="library" scope="PROVIDED" name="jaro_winkler (v1.5.4, RVM: ruby-2.6.3) [gem]" level="application" />
17
- <orderEntry type="library" scope="PROVIDED" name="json (v2.3.0, RVM: ruby-2.6.3) [gem]" level="application" />
18
- <orderEntry type="library" scope="PROVIDED" name="parallel (v1.19.1, RVM: ruby-2.6.3) [gem]" level="application" />
19
- <orderEntry type="library" scope="PROVIDED" name="parser (v2.7.0.4, RVM: ruby-2.6.3) [gem]" level="application" />
20
- <orderEntry type="library" scope="PROVIDED" name="rainbow (v3.0.0, RVM: ruby-2.6.3) [gem]" level="application" />
21
- <orderEntry type="library" scope="PROVIDED" name="rake (v13.0.1, RVM: ruby-2.6.3) [gem]" level="application" />
22
- <orderEntry type="library" scope="PROVIDED" name="rexml (v3.2.4, RVM: ruby-2.6.3) [gem]" level="application" />
23
- <orderEntry type="library" scope="PROVIDED" name="rspec (v3.9.0, RVM: ruby-2.6.3) [gem]" level="application" />
24
- <orderEntry type="library" scope="PROVIDED" name="rspec-core (v3.9.1, RVM: ruby-2.6.3) [gem]" level="application" />
25
- <orderEntry type="library" scope="PROVIDED" name="rspec-expectations (v3.9.0, RVM: ruby-2.6.3) [gem]" level="application" />
26
- <orderEntry type="library" scope="PROVIDED" name="rspec-mocks (v3.9.1, RVM: ruby-2.6.3) [gem]" level="application" />
27
- <orderEntry type="library" scope="PROVIDED" name="rspec-support (v3.9.2, RVM: ruby-2.6.3) [gem]" level="application" />
28
- <orderEntry type="library" scope="PROVIDED" name="rubocop (v0.80.1, RVM: ruby-2.6.3) [gem]" level="application" />
29
- <orderEntry type="library" scope="PROVIDED" name="rubocop-md (v0.3.2, RVM: ruby-2.6.3) [gem]" level="application" />
30
- <orderEntry type="library" scope="PROVIDED" name="rubocop-performance (v1.5.2, RVM: ruby-2.6.3) [gem]" level="application" />
31
- <orderEntry type="library" scope="PROVIDED" name="rubocop-rspec (v1.38.1, RVM: ruby-2.6.3) [gem]" level="application" />
32
- <orderEntry type="library" scope="PROVIDED" name="ruby-progressbar (v1.10.1, RVM: ruby-2.6.3) [gem]" level="application" />
33
- <orderEntry type="library" scope="PROVIDED" name="simplecov (v0.18.5, RVM: ruby-2.6.3) [gem]" level="application" />
34
- <orderEntry type="library" scope="PROVIDED" name="simplecov-html (v0.12.2, RVM: ruby-2.6.3) [gem]" level="application" />
35
- <orderEntry type="library" scope="PROVIDED" name="unicode-display_width (v1.6.1, RVM: ruby-2.6.3) [gem]" level="application" />
36
- <orderEntry type="library" scope="PROVIDED" name="url (v0.3.2, RVM: ruby-2.6.3) [gem]" level="application" />
37
- </component>
38
- </module>
data/.idea/misc.xml DELETED
@@ -1,7 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <project version="4">
3
- <component name="JavaScriptSettings">
4
- <option name="languageLevel" value="ES6" />
5
- </component>
6
- <component name="ProjectRootManager" version="2" project-jdk-name="RVM: ruby-2.6.3" project-jdk-type="RUBY_SDK" />
7
- </project>
data/.idea/modules.xml DELETED
@@ -1,8 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <project version="4">
3
- <component name="ProjectModuleManager">
4
- <modules>
5
- <module fileurl="file://$PROJECT_DIR$/.idea/lex-health.iml" filepath="$PROJECT_DIR$/.idea/lex-health.iml" />
6
- </modules>
7
- </component>
8
- </project>
data/.idea/vagrant.xml DELETED
@@ -1,7 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <project version="4">
3
- <component name="VagrantProjectSettings">
4
- <option name="instanceFolder" value="" />
5
- <option name="provider" value="" />
6
- </component>
7
- </project>
data/.idea/workspace.xml DELETED
@@ -1,13 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <project version="4">
3
- <component name="CoverageOptionsProvider">
4
- <option name="myAddOrReplace" value="0" />
5
- </component>
6
- <component name="Git.Settings">
7
- <option name="PUSH_AUTO_UPDATE" value="true" />
8
- <option name="ROOT_SYNC" value="DONT_SYNC" />
9
- </component>
10
- <component name="PropertiesComponent">
11
- <property name="settings.editor.selected.configurable" value="reference.settingsdialog.project.vagrant" />
12
- </component>
13
- </project>
data/bin/console DELETED
@@ -1,14 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- require 'bundler/setup'
4
- require 'legion/extensions/health'
5
-
6
- # You can add fixtures and/or initialization code here to make experimenting
7
- # with your gem easier. You can also use a different console, if you like.
8
-
9
- # (If you use this, don't forget to add pry to your Gemfile!)
10
- # require "pry"
11
- # Pry.start
12
-
13
- require 'irb'
14
- IRB.start(__FILE__)
data/bin/setup DELETED
@@ -1,8 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -euo pipefail
3
- IFS=$'\n\t'
4
- set -vx
5
-
6
- bundle install
7
-
8
- # Do any other automated setup that you need to do here