harvest-ruby-v2 0.2.1 → 0.2.2
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/Gemfile +16 -31
- data/harvest-ruby-v2.gemspec +2 -0
- data/lib/harvest.rb +13 -11
- data/lib/harvest/creates.rb +2 -2
- data/lib/harvest/discovers.rb +1 -1
- data/lib/harvest/version.rb +1 -1
- metadata +31 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b1aac6146965e984e871bb5d1601310c108d0ee6a737ce35a454d68af56e268d
|
4
|
+
data.tar.gz: 71e4f29dd7d7fe6545dfeda482ced565b93121c7adc5afd22bad3e3479519728
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7d0f40032b530b1edc3b9026c66dfd5e21d89851bfce653ef412aae0c9d853a5f602abb6c3ddd7dde260946281951673e648a6ef3e1364423b7208e5f3423abf
|
7
|
+
data.tar.gz: 47dde60a64901ab2b224566ffe0260de105fa350e9fdabf9c1ed295bc65b7b50059143518909ba4fccf3a72908cd3183c64a2685e4cdf5c8acecc0b2f935c667
|
data/Gemfile
CHANGED
@@ -5,35 +5,20 @@ source 'https://rubygems.org'
|
|
5
5
|
# Specify your gem's dependencies in harvest.gemspec
|
6
6
|
gemspec
|
7
7
|
|
8
|
-
gem 'rake', '~> 12.0'
|
9
|
-
gem 'rspec', '~> 3.0'
|
10
|
-
|
11
|
-
gem 'rest-client', '~> 2.1'
|
12
|
-
|
13
|
-
gem 'pry', '~> 0.13.1'
|
14
|
-
|
15
|
-
gem 'configparser', '~> 0.1.7'
|
16
|
-
|
17
|
-
gem 'rubocop', '~> 0.89.1'
|
18
|
-
|
19
8
|
gem 'activesupport', '~> 6.0'
|
20
|
-
|
21
|
-
gem '
|
22
|
-
|
23
|
-
gem '
|
24
|
-
|
25
|
-
gem '
|
26
|
-
|
27
|
-
gem 'rubocop
|
28
|
-
|
29
|
-
gem '
|
30
|
-
|
31
|
-
gem '
|
32
|
-
gem '
|
33
|
-
gem '
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
gem 'redcarpet', '~> 3.5'
|
38
|
-
|
39
|
-
gem 'yard-struct', '~> 1.1'
|
9
|
+
gem 'configparser', '~> 0.1.7', group: :development
|
10
|
+
gem 'pry', '~> 0.13.1', group: :development
|
11
|
+
gem 'rake', '~> 12.0', group: :development
|
12
|
+
gem 'redcarpet', '~> 3.5', group: :development
|
13
|
+
gem 'reek', '~> 6.0', group: :development
|
14
|
+
gem 'rest-client', '~> 2.1'
|
15
|
+
gem 'rspec', '~> 3.0', group: :development
|
16
|
+
gem 'rubocop', '~> 0.89.1', group: :development
|
17
|
+
gem 'rubocop-performance', '~> 1.7', group: :development
|
18
|
+
gem 'rubocop-rake', '~> 0.5.1', group: :development
|
19
|
+
gem 'rubocop-rspec', '~> 1.43', group: :development
|
20
|
+
gem 'ruby-prof', '~> 1.4', group: :development
|
21
|
+
gem 'simplecov', '~> 0.19.0', group: :development
|
22
|
+
gem 'webmock', '~> 3.8', group: :development
|
23
|
+
gem 'yard', '~> 0.9.25', group: :development
|
24
|
+
gem 'yard-struct', '~> 1.1', group: :development
|
data/harvest-ruby-v2.gemspec
CHANGED
@@ -28,4 +28,6 @@ Gem::Specification.new do |spec|
|
|
28
28
|
# spec.bindir = 'exe'
|
29
29
|
# spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
30
30
|
spec.require_paths = ['lib']
|
31
|
+
spec.add_dependency 'activesupport', '~> 6.0'
|
32
|
+
spec.add_dependency 'rest-client', '~> 2.1'
|
31
33
|
end
|
data/lib/harvest.rb
CHANGED
@@ -88,27 +88,29 @@ module Harvest
|
|
88
88
|
|
89
89
|
# Discover resources
|
90
90
|
def discover(**params)
|
91
|
-
@state[@state[:active]] = Harvest::Discovers
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
91
|
+
@state[@state[:active]] = Harvest::Discovers
|
92
|
+
.const_get(to_class_name(@state[:active]))
|
93
|
+
.new
|
94
|
+
.discover(
|
95
|
+
@admin_api, @client, @factory, active_user, @state, params
|
96
|
+
)
|
96
97
|
self
|
97
98
|
end
|
98
99
|
|
99
100
|
# Select a subset of all items depending on state
|
100
101
|
def select(&block)
|
101
|
-
@state[
|
102
|
+
@state[@state[:active]] = @state[@state[:active]].select(&block)
|
102
103
|
self
|
103
104
|
end
|
104
105
|
|
105
106
|
# Map block of filtered items
|
106
107
|
def map(&block)
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
108
|
+
@state[@state[:active]].map(&block)
|
109
|
+
end
|
110
|
+
|
111
|
+
# Return data from the active state in the base state or filtered.
|
112
|
+
def data
|
113
|
+
@state[@state[:active]]
|
112
114
|
end
|
113
115
|
|
114
116
|
# Create an instance of object based on state
|
data/lib/harvest/creates.rb
CHANGED
@@ -37,8 +37,8 @@ module Harvest
|
|
37
37
|
possible_keys = %i[spent_date notes external_reference user_id]
|
38
38
|
payload = kwargs.map { |k, v| [k, v] if possible_keys.include?(k) }.to_h
|
39
39
|
payload[:user_id] ||= @active_user.id
|
40
|
-
payload[:task_id] = @state[:
|
41
|
-
payload[:project_id] = true_project(@state[:
|
40
|
+
payload[:task_id] = @state[:project_tasks][0].task.id
|
41
|
+
payload[:project_id] = true_project(@state[:projects][0]).id
|
42
42
|
payload
|
43
43
|
end
|
44
44
|
end
|
data/lib/harvest/discovers.rb
CHANGED
data/lib/harvest/version.rb
CHANGED
metadata
CHANGED
@@ -1,15 +1,43 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: harvest-ruby-v2
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Craig Davis
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-10-
|
12
|
-
dependencies:
|
11
|
+
date: 2020-10-13 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: activesupport
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '6.0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '6.0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rest-client
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '2.1'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '2.1'
|
13
41
|
description: Harvest API for v2 written in Fluent API style
|
14
42
|
email:
|
15
43
|
- craig.davis@rackspace.com
|