eco-rake 0.2.12 → 0.2.14

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: f0e5b2b6b60004f17abddc0bdc9c89dd1f9ccbaabe48f26d61af56c0def57674
4
- data.tar.gz: adc4853a88785e607e7b0492dfdc21e9fd62a4c7d8fcd63f9f13c993e3d82e06
3
+ metadata.gz: a18ccd920c55abc8943597b22c162daddbc05d6b8d14595c551ba0b639fd33e1
4
+ data.tar.gz: 1b3e625166e55821786cb117c121dc776173443863f7bd21e2e41db98e0b1ceb
5
5
  SHA512:
6
- metadata.gz: 597b31f058011663a3e9d2648fa17f121de9cd3f4a83c966e1cf82ba1c0ac560eb191160eb85e1e96b18dcefeb3dba1d44c59aabc919eef5abd6a9f95636a962
7
- data.tar.gz: 1583db2d611313f1f279ae2770febca8d404664272fedeb7f37889cc0dd20b15c338e35a922617224398eebb6cc678b2ad6b064898ccd5cbdcbc42c72c34022b
6
+ metadata.gz: 77f72a21aa615a697f500edad183fa7a0fe11ea593a6abaf76c34e67a61f2d0f639ac8e85ada12ca7b1e5d99465f95f8db906ebdb362cf2800c297ec8e8951c7
7
+ data.tar.gz: e487e42dd2080e89196a642c1a319385a3b61f16ea587bc0a604c70fbca8fab35989907722adb34b168afeda15892a71e5db2155e316d421f49233ad67c0b3f4
data/CHANGELOG.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
- ## [0.2.13] - 2025-02-xx
5
+ ## [0.2.15] - 2025-03-xx
6
6
 
7
7
  ### Added
8
8
 
@@ -10,6 +10,18 @@ All notable changes to this project will be documented in this file.
10
10
 
11
11
  ### Fixed
12
12
 
13
+ ## [0.2.14] - 2025-03-10
14
+
15
+ ### Added
16
+
17
+ - Real support for URL pull driver
18
+
19
+ ## [0.2.13] - 2025-02-25
20
+
21
+ ### Fixed
22
+
23
+ - Task option name compatibility on ruby command.
24
+
13
25
  ## [0.2.12] - 2025-02-25
14
26
 
15
27
  ### Fixed
@@ -0,0 +1,50 @@
1
+ class EcoRake
2
+ module Lib
3
+ module Files
4
+ class UrlPull < EcoRake::Lib::BaseTask
5
+ FORWARD_RULES = {
6
+ enviro: ->(enviro) { "-#{enviro}" },
7
+ space: ->(space) { "-space #{space}" },
8
+ folder: ->(folder) { "-local-folder #{folder}"},
9
+ target_url: ->(str) { "-target-url-const #{str}"}
10
+ }.freeze
11
+
12
+ options_with_defaults true
13
+
14
+ option '-e', '--enviro ENVIRO', String, desc: 'Target environment to run against (i.e. org, live)', required: true
15
+ option '-w', '--space SPACE', String, desc: 'Target space of the envionment (i.e. uat)'
16
+ option '-d', '--folder NAME', default: '.', desc: 'Source local folder'
17
+ option '-p', '--target-url CONST', String, desc: "Specifies a const to use as the target url"
18
+
19
+ option_forwarding(**FORWARD_RULES)
20
+
21
+ # attr_const :target_enviro, required: true
22
+ # option_reopen :enviro, default_lookup: :target_enviro
23
+
24
+ def task(*_args)
25
+ sh_exit_on_fail url_pull_command
26
+ end
27
+
28
+ private
29
+
30
+ def url_pull_command
31
+ cmd = [base_command]
32
+ cmd << forward_option(:folder)
33
+ cmd.push(*forward_options(:target_url))
34
+ cmd << '-no-people'
35
+ cmd = yield(cmd) if block_given?
36
+ string_cmd(*cmd)
37
+ end
38
+
39
+ def base_command
40
+ string_cmd(
41
+ ruby_runner,
42
+ forward_option(:enviro),
43
+ forward_option(:space),
44
+ '-url-pull'
45
+ )
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
@@ -1,6 +1,7 @@
1
1
  require_relative 'files/purge'
2
2
  require_relative 'files/decrypt'
3
3
  require_relative 'files/sftp'
4
+ require_relative 'files/url_pull'
4
5
 
5
6
  class EcoRake
6
7
  module Lib
@@ -5,7 +5,7 @@ class EcoRake
5
5
  # @note in integration repos this is used to be called `run:feed`
6
6
  class SyncProcess < EcoRake::Lib::People::SyncRely
7
7
  attr_const :do_decrypt, default: false
8
- attr_const :pull_driver, default: 'sftp'
8
+ attr_const :pull_driver, default: :sftp
9
9
  attr_const :target_task
10
10
 
11
11
  attr_const :target_enviro, required: true
@@ -25,7 +25,7 @@ class EcoRake
25
25
  sh_continue rake_sync_command
26
26
  return if options[:simulate]
27
27
 
28
- sh_continue rake_sftp_archive if remote_archive && pull_driver == 'sftp'
28
+ sh_continue rake_sftp_archive if remote_archive && pull_driver.to_sym == :sftp
29
29
  sh_continue rake_files_purge('cache')
30
30
  sh_continue rake_files_purge('requests')
31
31
  end
@@ -33,10 +33,12 @@ class EcoRake
33
33
  private
34
34
 
35
35
  def pull_file
36
- case pull_driver
37
- when 'sftp'
36
+ drv = pull_driver.to_sym
37
+
38
+ case drv
39
+ when :sftp
38
40
  rake_sftp_get
39
- when 'url'
41
+ when :url
40
42
  rake_url_get
41
43
  end
42
44
  end
@@ -46,7 +48,7 @@ class EcoRake
46
48
  end
47
49
 
48
50
  def rake_url_get
49
- rake_command("csv:#{options[:enviro]}:url", *forward_options(:space, :folder))
51
+ rake_command('csv:url-pull', *forward_options(:enviro, :space, :folder))
50
52
  end
51
53
 
52
54
  def rake_sftp_archive
@@ -50,10 +50,10 @@ class EcoRake
50
50
  def task(*args)
51
51
  if (callback = target_subtask.callback)
52
52
  instance_exec(*args, &callback)
53
- elsif respond_to?(target_subtask.name, true)
54
- send(target_subtask.name)
53
+ elsif respond_to?(target_subtask.command_name, true)
54
+ send(target_subtask.command_name)
55
55
  else
56
- msg = "Undefined method to perform '#{target_subtask.name}'"
56
+ msg = "Undefined method to perform '#{target_subtask.command_name}'"
57
57
  raise msg
58
58
  end
59
59
  end
@@ -8,5 +8,9 @@ class EcoRake
8
8
  @params = kargs
9
9
  @callback = callback
10
10
  end
11
+
12
+ def command_name
13
+ name.to_s.gsub('-', '_').to_sym
14
+ end
11
15
  end
12
16
  end
@@ -1,5 +1,5 @@
1
1
  require 'rake-commander'
2
2
 
3
3
  class EcoRake < RakeCommander
4
- VERSION = '0.2.12'.freeze
4
+ VERSION = '0.2.14'.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.2.12
4
+ version: 0.2.14
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: 2025-02-26 00:00:00.000000000 Z
11
+ date: 2025-03-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -212,6 +212,7 @@ files:
212
212
  - lib/eco-rake/lib/files/decrypt.rb
213
213
  - lib/eco-rake/lib/files/purge.rb
214
214
  - lib/eco-rake/lib/files/sftp.rb
215
+ - lib/eco-rake/lib/files/url_pull.rb
215
216
  - lib/eco-rake/lib/notify.rb
216
217
  - lib/eco-rake/lib/notify/mailer.rb
217
218
  - lib/eco-rake/lib/options.rb