recon_tools 0.1.0 → 0.1.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/recon_services.rb +9 -7
- data/lib/recon_tools/google_sheets_connect.rb +15 -10
- data/lib/recon_tools/version.rb +1 -1
- data/recon_tools.gemspec +3 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4b866c032ac00e240c6f2a9b435d3996e3b27eeffbdbb9b8fe30fb43ec893e3c
|
4
|
+
data.tar.gz: cc652526fce21cfa9c181d1fb7bc048fdaa5def28abeda4ce3ebfce720e439e8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 801c31bb190bdb55a0cbb9d3e35a613142c453d2810229241ff6b6cdf96210db0f5cbe30b1eccf67ccda3c93b0d4d8967dfe4574e0bd44f3122557727c8fed77
|
7
|
+
data.tar.gz: ae76435de549558f70baa85d22d7ae2a5b53f01d10ac8e21c930f618c507408c06a46e50a5b44b8208aaa76e78ccc697d4db1644d0bff3de005e9ceb3fb58e77
|
data/lib/recon_services.rb
CHANGED
@@ -4,15 +4,15 @@ require 'logging'
|
|
4
4
|
class ReconServices
|
5
5
|
def initialize
|
6
6
|
@logger = Logging.logger(STDOUT)
|
7
|
-
@logger.level = :
|
7
|
+
@logger.level = :debug
|
8
8
|
end
|
9
9
|
|
10
10
|
def get_jira_data(company_url_base = "leadtechie", project = "TEST", jira_col_start, jira_col_end)
|
11
11
|
token = ENV['RECON_TOOLS_JIRA_TOKEN']
|
12
12
|
email = ENV['RECON_TOOLS_JIRA_EMAIL']
|
13
13
|
#if token="" or email= ""
|
14
|
-
assert_not_equal nil, token, "Token not set as environment variable"
|
15
|
-
assert_not_equal nil, email, "email not set as environment variable"
|
14
|
+
#assert_not_equal nil, token, "Token not set as environment variable"
|
15
|
+
#assert_not_equal nil, email, "email not set as environment variable"
|
16
16
|
jira_connect = JiraConnect.new(email, token)
|
17
17
|
|
18
18
|
|
@@ -28,7 +28,7 @@ class ReconServices
|
|
28
28
|
# Does a reconciliation of the data
|
29
29
|
# Makes updates to the data on the sheet with the new data from JIRA
|
30
30
|
# Rereads data from the sheet and confirms the same as from JIRA
|
31
|
-
def jira_googlesheets_reconcile_and_update(sheet_name, tab_number, sheet_col_start, sheet_col_end, copy_flag=false, write_change_log=false, google_credentials_file,
|
31
|
+
def jira_googlesheets_reconcile_and_update(sheet_name, tab_number, sheet_col_start, sheet_col_end, row_offset, copy_flag=false, write_change_log=false, google_credentials_file,
|
32
32
|
company_url_base, project, jira_col_start, jira_col_end)
|
33
33
|
@logger.info "Starting e2e tests in jira_googlesheets_reconcile_and_update"
|
34
34
|
@logger.info "Connecting to JIRA and gets list of components_from_jira"
|
@@ -36,9 +36,11 @@ class ReconServices
|
|
36
36
|
#puts Dir.pwd
|
37
37
|
@logger.info "Connecting to GoogleSheets and reads list from matched_records"
|
38
38
|
googlesheets_connect = GoogleSheetsConnect.new(google_credentials_file)
|
39
|
-
sheet_data = googlesheets_connect.read_sheet_data sheet_name,
|
39
|
+
sheet_data = googlesheets_connect.read_sheet_data sheet_name, tab_number, row_offset, sheet_col_end
|
40
40
|
sheet_data = sheet_data.map { |e| e[sheet_col_start..sheet_col_end]}
|
41
41
|
|
42
|
+
@logger.debug "row_offset "
|
43
|
+
@logger.debug row_offset
|
42
44
|
@logger.debug "sheet_data"
|
43
45
|
@logger.debug sheet_data
|
44
46
|
@logger.debug "sheet_data"
|
@@ -60,14 +62,14 @@ class ReconServices
|
|
60
62
|
end
|
61
63
|
|
62
64
|
@logger.info "Updating he data on the sheet with the new data from JIRA"
|
63
|
-
googlesheets_connect.update_specific_cells(recon_tools.updates, sheet_name, sheet_id, sheet_col_start)
|
65
|
+
googlesheets_connect.update_specific_cells(recon_tools.updates, sheet_name, sheet_id, sheet_col_start, row_offset)
|
64
66
|
|
65
67
|
#sheet_data_new = googlesheets_connect.read_sheet_data sheet_name, sheet_id, 0, 5
|
66
68
|
#sheet_data_new.each { |e| e.delete_at(0)}
|
67
69
|
#assert_equal components_from_jira, sheet_data_new, "Compare updated data from sheet with JIRA"
|
68
70
|
|
69
71
|
if write_change_log
|
70
|
-
googlesheets_connect.write_column recon_tools.changelog, sheet_name, sheet_id, sheet_col_end
|
72
|
+
googlesheets_connect.write_column recon_tools.changelog, sheet_name, sheet_id, sheet_col_end, row_offset
|
71
73
|
end
|
72
74
|
|
73
75
|
@logger.info "ending e2e tests in jira_googlesheets_reconcile_and_update"
|
@@ -8,7 +8,7 @@ require "google_docs"
|
|
8
8
|
|
9
9
|
class GoogleSheetsConnect
|
10
10
|
@session
|
11
|
-
def initialize(json_crednetials = "
|
11
|
+
def initialize(json_crednetials = "../credentials.json")
|
12
12
|
#credentials = File.read("../config/credentials.json")
|
13
13
|
#puts credentials
|
14
14
|
@session = GoogleDrive::Session.from_service_account_key(json_crednetials)
|
@@ -31,45 +31,45 @@ class GoogleSheetsConnect
|
|
31
31
|
spreadsheet.worksheets.length-1
|
32
32
|
end
|
33
33
|
|
34
|
-
def insert_data(dataToInsert, sheetName)
|
34
|
+
def insert_data(dataToInsert, sheetName, row_offset=0)
|
35
35
|
spreadsheet = @session.spreadsheet_by_title(sheetName)
|
36
36
|
worksheet = spreadsheet.worksheets.first
|
37
37
|
# worksheet.rows.each { |row| puts row.first(6).join(" | ") }
|
38
38
|
|
39
|
-
worksheet.insert_rows(1
|
39
|
+
worksheet.insert_rows(1+row_offset, dataToInsert)
|
40
40
|
worksheet.save
|
41
41
|
end
|
42
42
|
|
43
|
-
def update_data(data_to_insert, sheet_name, tabNumber=0)
|
43
|
+
def update_data(data_to_insert, sheet_name, tabNumber=0, row_offset=0)
|
44
44
|
spreadsheet = @session.spreadsheet_by_title(sheet_name)
|
45
45
|
worksheet = spreadsheet.worksheets[tabNumber]
|
46
46
|
|
47
47
|
data_to_insert.each_with_index do |row, rowIndex|
|
48
48
|
row.each_with_index do |value, colIndex|
|
49
|
-
worksheet[rowIndex+1, colIndex+1]= value
|
49
|
+
worksheet[rowIndex+1+row_offset, colIndex+1]= value
|
50
50
|
puts "#{rowIndex}, #{colIndex} = #{value}"
|
51
51
|
end
|
52
52
|
end
|
53
53
|
worksheet.save
|
54
54
|
end
|
55
55
|
|
56
|
-
def update_specific_cells(data_to_insert, sheet_name, tabNumber=0, colOffset=0)
|
56
|
+
def update_specific_cells(data_to_insert, sheet_name, tabNumber=0, colOffset=0, row_offset=0)
|
57
57
|
spreadsheet = @session.spreadsheet_by_title(sheet_name)
|
58
58
|
worksheet = spreadsheet.worksheets[tabNumber]
|
59
59
|
|
60
60
|
data_to_insert.each do |update|
|
61
|
-
worksheet[update[0]+1, update[1]+1+colOffset]= update[2]
|
61
|
+
worksheet[update[0]+1+row_offset, update[1]+1+colOffset]= update[2]
|
62
62
|
#puts "#{row}, #{col} = #{value}"
|
63
63
|
end
|
64
64
|
worksheet.save
|
65
65
|
end
|
66
66
|
|
67
|
-
def write_column(data_to_insert, sheet_name, tabNumber=0, colOffset=0)
|
67
|
+
def write_column(data_to_insert, sheet_name, tabNumber=0, colOffset=0, row_offset=0)
|
68
68
|
spreadsheet = @session.spreadsheet_by_title(sheet_name)
|
69
69
|
worksheet = spreadsheet.worksheets[tabNumber]
|
70
70
|
|
71
71
|
data_to_insert.each_with_index do |value, index|
|
72
|
-
worksheet[index+1, 1+colOffset]= "#{DateTime::now} #{value} \n"+ worksheet[index+1, 1+colOffset]
|
72
|
+
worksheet[index+1+row_offset, 1+colOffset]= "#{DateTime::now} #{value} \n"+ worksheet[index+1+row_offset, 1+colOffset]
|
73
73
|
end
|
74
74
|
worksheet.save
|
75
75
|
end
|
@@ -87,10 +87,15 @@ class GoogleSheetsConnect
|
|
87
87
|
data.each do |row|
|
88
88
|
data2 << row.first(columns)
|
89
89
|
end
|
90
|
+
#puts data2.join(':')
|
91
|
+
#puts "dropping rows"
|
92
|
+
#puts skip_rows
|
93
|
+
#data2.drop(skip_rows)
|
94
|
+
#puts data2.join(':')
|
90
95
|
else
|
91
96
|
data2 = data
|
92
97
|
end
|
93
|
-
data2
|
98
|
+
data2.drop(skip_rows)
|
94
99
|
end
|
95
100
|
|
96
101
|
def unfreeze_array(arrayIn2d)
|
data/lib/recon_tools/version.rb
CHANGED
data/recon_tools.gemspec
CHANGED
@@ -9,7 +9,7 @@ Gem::Specification.new do |spec|
|
|
9
9
|
spec.email = ['coder-chris-github@gmail.com']
|
10
10
|
spec.summary = 'recon_tools: Tools to support importing, exporting and reconciliation of data'
|
11
11
|
spec.description = 'recon_tools: Tools to support importing, exporting and reconciliation of data from JIRA, GoogleSheets and more..'
|
12
|
-
spec.homepage = 'https://github.com/coder-chris/
|
12
|
+
spec.homepage = 'https://github.com/coder-chris/recon_tools'
|
13
13
|
spec.license = 'MIT'
|
14
14
|
spec.platform = Gem::Platform::RUBY
|
15
15
|
spec.required_ruby_version = '>= 2.5.0'
|
@@ -31,6 +31,8 @@ Gem::Specification.new do |spec|
|
|
31
31
|
else
|
32
32
|
spec.add_development_dependency 'rails', ENV['TEST_RAILS_VERSION'].to_s
|
33
33
|
end
|
34
|
+
|
35
|
+
|
34
36
|
spec.add_development_dependency 'rake', '~> 13.0'
|
35
37
|
spec.add_development_dependency 'rspec', '~> 3.6'
|
36
38
|
spec.add_development_dependency 'rubocop', '~> 1.0'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: recon_tools
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris Rowe
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-11-
|
11
|
+
date: 2021-11-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -141,7 +141,7 @@ files:
|
|
141
141
|
- lib/recon_tools/jira_connect.rb
|
142
142
|
- lib/recon_tools/version.rb
|
143
143
|
- recon_tools.gemspec
|
144
|
-
homepage: https://github.com/coder-chris/
|
144
|
+
homepage: https://github.com/coder-chris/recon_tools
|
145
145
|
licenses:
|
146
146
|
- MIT
|
147
147
|
metadata: {}
|