eco-rake 0.1.4 → 0.1.6

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 074016c49dcad11008927bbd2463b93b5f8f8b9fd78735c74ec5b1d67f8091a3
4
- data.tar.gz: 42793537149d86f4c5761cc74370a47c7fa1943259ec32426d26db6feb20d64f
3
+ metadata.gz: 60189b6e7dc7efcff09a1086ea880b932ffefd23355c352d9811e2ea777f81b6
4
+ data.tar.gz: aea908242491f387979870592ce41c9535bf22122420148d8b5c4d77d6c4809f
5
5
  SHA512:
6
- metadata.gz: f4f737b509802574d297f50494f2998c2babfb496d23a5b1420e3f00342f8ea49439f59b74e8c3644b048e99a871b3e93b225a1cedeb9baf5982e49cecac5854
7
- data.tar.gz: 7b6240f0d0e6206051767b957d3b83fbe9673e96aed98e07584508fda034fde4849cc8a2df8c6d1e56e75feaf90a5c13252dbaf32d24f3540f60e2e933aa40c4
6
+ metadata.gz: 0d11088ce6730501e61af2fb5d2863138801f35381acf60a756afa2fc45d8bb24dfaffda13a8cf47b9b808cca67fd6fecc6a62f890e7f15d2a0ae81fb7699558
7
+ data.tar.gz: f57a89800529e1556b6b69e851e1b813f5f614ef3d8257efcebbb271a0cb4dd2b4890609cc2641c2a9d6f333e19a58b4553dc4d7dbdd4f39e2c4740045676a0d
data/CHANGELOG.md CHANGED
@@ -1,12 +1,25 @@
1
1
  # Change Log
2
2
  All notable changes to this project will be documented in this file.
3
3
 
4
- ## [0.1.4] - 2023-07-xx
4
+ ## [0.1.7] - 2024-02-xx
5
5
 
6
6
  ### Added
7
7
  ### Fixed
8
+ ### Changed
9
+
10
+ ## [0.1.6] - 2024-02-03
11
+
12
+ ### Fixed
13
+ - Compatibility with `ruby 3`
14
+ - call to `super` with no args where method on parent class doesn't match parameters.
8
15
 
9
16
  ### Changed
17
+ - upgrade dependencies
18
+
19
+ ## [0.1.5] - 2024-02-01
20
+
21
+ ### Added
22
+ - new options for file pattern const and remote subfolder for the SFTP task
10
23
 
11
24
  ## [0.1.4] - 2023-07-23
12
25
 
data/eco-rake.gemspec CHANGED
@@ -21,14 +21,14 @@ Gem::Specification.new do |spec|
21
21
 
22
22
  spec.required_ruby_version = '>= 2.7.2'
23
23
 
24
- spec.add_development_dependency "bundler", ">= 2.4.9", "< 3"
24
+ spec.add_development_dependency "bundler", ">= 2.4.12", "< 3"
25
25
  spec.add_development_dependency "rake", ">= 13.0.6", "< 14"
26
- spec.add_development_dependency "redcarpet", ">= 3.6.0", "< 4"
27
26
  spec.add_development_dependency "rspec", ">= 3.10.0", "< 4"
28
27
  spec.add_development_dependency "yard", ">= 0.9.34", "< 1"
28
+ spec.add_development_dependency "redcarpet", ">= 3.6.0", "< 4"
29
29
 
30
- #spec.add_dependency 'aws-sdk-s3', '>= 1.83.0', '< 2'
31
- spec.add_dependency 'aws-sdk-ses', '>= 1.36.0', '< 2'
32
- spec.add_dependency 'dotenv', '>= 2.7.6', '< 3'
30
+ #spec.add_dependency 'aws-sdk-s3', '>= 1.142.0', '< 2'
31
+ spec.add_dependency 'aws-sdk-ses', '>= 1.58.0', '< 2'
32
+ spec.add_dependency 'dotenv', '>= 2.8.1', '< 3'
33
33
  spec.add_dependency 'rake-commander', '>= 0.3.6', "< 0.4"
34
34
  end
@@ -8,7 +8,9 @@ class EcoRake
8
8
  list: '-list',
9
9
  get_last: '-get-last',
10
10
  get: '-get',
11
- archive: '-archive'
11
+ archive: '-archive',
12
+ file_pattern: ->(str) { "-file-pattern-const #{str}"},
13
+ remote_subfolder: ->(sub) { "-remote-subfolder #{sub}"}
12
14
  }.freeze
13
15
 
14
16
  options_with_defaults true
@@ -19,6 +21,8 @@ class EcoRake
19
21
  option '-g', '--get', TrueClass, desc: 'Gets all available CSV feed files'
20
22
  option '-t', '--get-last', TrueClass, desc: 'Gets the last available CSV feed file'
21
23
  option '-a', '--archive', TrueClass, desc: "Moves the remote CSV feed files to the '/Archive' folder"
24
+ option '-p', '--file-pattern CONST', String, desc: "Specifies a const to use as the target file pattern"
25
+ option '-r', '--remote-subfolder SUBFOLDER', String, desc: "Remote subfolder of the env (at the top of the enviro folder)"
22
26
 
23
27
  option_forwarding(**FORWARD_RULES)
24
28
 
@@ -35,6 +39,7 @@ class EcoRake
35
39
  cmd = [base_command]
36
40
  cmd << forward_option(:folder)
37
41
  cmd << forward_options(:list, :get_last, :get, :archive).compact.first || '-list'
42
+ cmd.push(*forward_options(:remote_subfolder, :file_pattern))
38
43
  cmd << '-no-people'
39
44
  cmd = yield(cmd) if block_given?
40
45
  string_cmd(*cmd)
@@ -4,6 +4,7 @@ class EcoRake
4
4
  # The top level task that organizes all the people sync
5
5
  class SyncProcess < EcoRake::Lib::People::SyncRely
6
6
  attr_const :do_decrypt, default: false
7
+ attr_const :pull_driver, default: 'sftp'
7
8
  attr_const :target_task
8
9
 
9
10
  attr_const :target_enviro, required: true
@@ -16,23 +17,36 @@ class EcoRake
16
17
 
17
18
  def task(*_args)
18
19
  upsert_local_dir(options[:folder])
19
- sh_continue rake_sftp_get
20
+ sh_continue pull_file
20
21
  if do_decrypt
21
22
  failed_decryption_notify unless 0 == sh_continue(rake_decrypt)
22
23
  end
23
24
  sh_continue rake_sync_command
24
25
  return if options[:simulate]
25
- sh_continue rake_sftp_archive
26
+ sh_continue rake_sftp_archive if pull_driver == 'sftp'
26
27
  sh_continue rake_files_purge('cache')
27
28
  sh_continue rake_files_purge('requests')
28
29
  end
29
30
 
30
31
  private
31
32
 
33
+ def pull_file
34
+ case pull_driver
35
+ when 'sftp'
36
+ rake_sftp_get
37
+ when 'url'
38
+ rake_url_get
39
+ end
40
+ end
41
+
32
42
  def rake_sftp_get
33
43
  rake_command('csv:sftp', *forward_options(:enviro, :folder), '-t')
34
44
  end
35
45
 
46
+ def rake_url_get
47
+ rake_command("csv:#{options[:enviro]}:url", *forward_options(:folder))
48
+ end
49
+
36
50
  def rake_sftp_archive
37
51
  rake_command('csv:sftp', *forward_options(:enviro, :folder), '-a')
38
52
  end
@@ -11,7 +11,7 @@ class EcoRake
11
11
  module ClassMethods
12
12
  private
13
13
 
14
- def add_to_options(opt, *args)
14
+ def add_to_options(opt, **kargs)
15
15
  super.tap do |out|
16
16
  next unless opt.respond_to?(:parent=)
17
17
  opt.parent = self if opt == out
@@ -1,5 +1,5 @@
1
1
  require 'rake-commander'
2
2
 
3
3
  class EcoRake < RakeCommander
4
- VERSION = '0.1.4'.freeze
4
+ VERSION = '0.1.6'.freeze
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eco-rake
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Oscar Segura Samper
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-06-22 00:00:00.000000000 Z
11
+ date: 2024-02-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,7 +16,7 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 2.4.9
19
+ version: 2.4.12
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
22
  version: '3'
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: 2.4.9
29
+ version: 2.4.12
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: '3'
@@ -51,12 +51,12 @@ dependencies:
51
51
  - !ruby/object:Gem::Version
52
52
  version: '14'
53
53
  - !ruby/object:Gem::Dependency
54
- name: redcarpet
54
+ name: rspec
55
55
  requirement: !ruby/object:Gem::Requirement
56
56
  requirements:
57
57
  - - ">="
58
58
  - !ruby/object:Gem::Version
59
- version: 3.6.0
59
+ version: 3.10.0
60
60
  - - "<"
61
61
  - !ruby/object:Gem::Version
62
62
  version: '4'
@@ -66,57 +66,57 @@ dependencies:
66
66
  requirements:
67
67
  - - ">="
68
68
  - !ruby/object:Gem::Version
69
- version: 3.6.0
69
+ version: 3.10.0
70
70
  - - "<"
71
71
  - !ruby/object:Gem::Version
72
72
  version: '4'
73
73
  - !ruby/object:Gem::Dependency
74
- name: rspec
74
+ name: yard
75
75
  requirement: !ruby/object:Gem::Requirement
76
76
  requirements:
77
77
  - - ">="
78
78
  - !ruby/object:Gem::Version
79
- version: 3.10.0
79
+ version: 0.9.34
80
80
  - - "<"
81
81
  - !ruby/object:Gem::Version
82
- version: '4'
82
+ version: '1'
83
83
  type: :development
84
84
  prerelease: false
85
85
  version_requirements: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - ">="
88
88
  - !ruby/object:Gem::Version
89
- version: 3.10.0
89
+ version: 0.9.34
90
90
  - - "<"
91
91
  - !ruby/object:Gem::Version
92
- version: '4'
92
+ version: '1'
93
93
  - !ruby/object:Gem::Dependency
94
- name: yard
94
+ name: redcarpet
95
95
  requirement: !ruby/object:Gem::Requirement
96
96
  requirements:
97
97
  - - ">="
98
98
  - !ruby/object:Gem::Version
99
- version: 0.9.34
99
+ version: 3.6.0
100
100
  - - "<"
101
101
  - !ruby/object:Gem::Version
102
- version: '1'
102
+ version: '4'
103
103
  type: :development
104
104
  prerelease: false
105
105
  version_requirements: !ruby/object:Gem::Requirement
106
106
  requirements:
107
107
  - - ">="
108
108
  - !ruby/object:Gem::Version
109
- version: 0.9.34
109
+ version: 3.6.0
110
110
  - - "<"
111
111
  - !ruby/object:Gem::Version
112
- version: '1'
112
+ version: '4'
113
113
  - !ruby/object:Gem::Dependency
114
114
  name: aws-sdk-ses
115
115
  requirement: !ruby/object:Gem::Requirement
116
116
  requirements:
117
117
  - - ">="
118
118
  - !ruby/object:Gem::Version
119
- version: 1.36.0
119
+ version: 1.58.0
120
120
  - - "<"
121
121
  - !ruby/object:Gem::Version
122
122
  version: '2'
@@ -126,7 +126,7 @@ dependencies:
126
126
  requirements:
127
127
  - - ">="
128
128
  - !ruby/object:Gem::Version
129
- version: 1.36.0
129
+ version: 1.58.0
130
130
  - - "<"
131
131
  - !ruby/object:Gem::Version
132
132
  version: '2'
@@ -136,7 +136,7 @@ dependencies:
136
136
  requirements:
137
137
  - - ">="
138
138
  - !ruby/object:Gem::Version
139
- version: 2.7.6
139
+ version: 2.8.1
140
140
  - - "<"
141
141
  - !ruby/object:Gem::Version
142
142
  version: '3'
@@ -146,7 +146,7 @@ dependencies:
146
146
  requirements:
147
147
  - - ">="
148
148
  - !ruby/object:Gem::Version
149
- version: 2.7.6
149
+ version: 2.8.1
150
150
  - - "<"
151
151
  - !ruby/object:Gem::Version
152
152
  version: '3'