eco-rake 0.2.7 → 0.2.9
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/CHANGELOG.md +31 -2
- data/eco-rake.gemspec +2 -3
- data/lib/eco-rake/base.rb +2 -0
- data/lib/eco-rake/lib/concern/enviro.rb +2 -1
- data/lib/eco-rake/lib/export/payload.rb +10 -1
- data/lib/eco-rake/lib/files/purge.rb +2 -1
- data/lib/eco-rake/lib/files/sftp.rb +8 -1
- data/lib/eco-rake/lib/people/base_task.rb +2 -1
- data/lib/eco-rake/lib/people/sync_launch.rb +10 -2
- data/lib/eco-rake/lib/people/sync_options.rb +1 -0
- data/lib/eco-rake/lib/people/sync_process.rb +10 -8
- data/lib/eco-rake/lib/people/sync_rely.rb +1 -0
- data/lib/eco-rake/lib/task/runner_launch.rb +45 -2
- data/lib/eco-rake/lib/task/runner_options.rb +1 -0
- data/lib/eco-rake/lib/task/runner_rely.rb +2 -1
- data/lib/eco-rake/option/default_lookup.rb +7 -3
- data/lib/eco-rake/option/mirror.rb +1 -1
- data/lib/eco-rake/option/parented.rb +1 -1
- data/lib/eco-rake/options/library.rb +3 -1
- data/lib/eco-rake/subtask.rb +12 -0
- data/lib/eco-rake/version.rb +1 -1
- metadata +18 -17
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c004dd6f96343a455cce5a5a0939345996995999760df5d3b33db9e7227f2881
|
4
|
+
data.tar.gz: 5e0203f40d13999298c397701ab2e9c28e06fe5512ccd94cafaf007fbf91bc9d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 17e3c7a7303fb4f9751b0d70c012cccbfb9d19f9ac81726c6f3621254dc166a11f8c1421f3f6e8dee11dd6ef975d6cfebe866945cf6386ca992c60c2284df778
|
7
|
+
data.tar.gz: e93498897b7c7d82a4739acf95f31c595ebdac7a653b230bf037b58b470645e83a56de1a4939509ef7be05531abe1fc3f620d7390b411fed3ae7738e2a628af5
|
data/CHANGELOG.md
CHANGED
@@ -2,6 +2,37 @@
|
|
2
2
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
4
4
|
|
5
|
+
## [0.2.9] - 2025-02-xx
|
6
|
+
|
7
|
+
### Added
|
8
|
+
|
9
|
+
### Changed
|
10
|
+
|
11
|
+
### Fixed
|
12
|
+
|
13
|
+
## [0.2.9] - 2025-02-20
|
14
|
+
|
15
|
+
### Fixed
|
16
|
+
|
17
|
+
- `EcoRake::Lib::People::SyncLaunch` should forward `space`
|
18
|
+
|
19
|
+
## [0.2.8] - 2025-02-20
|
20
|
+
|
21
|
+
### Added
|
22
|
+
|
23
|
+
- `REMOTE_ARCHIVE` [Boolean] whether or not should archive remote files.
|
24
|
+
- Integration option for target `space`
|
25
|
+
- (sub)tasks declarion and invokation as `Enum`
|
26
|
+
|
27
|
+
### Changed
|
28
|
+
|
29
|
+
- code tidy up
|
30
|
+
- upgrade core gem dependency
|
31
|
+
|
32
|
+
### Fixed
|
33
|
+
|
34
|
+
- typo on `Options::Library#names`
|
35
|
+
|
5
36
|
## [0.2.7] - 2024-12-16
|
6
37
|
|
7
38
|
### Added
|
@@ -9,8 +40,6 @@ All notable changes to this project will be documented in this file.
|
|
9
40
|
- `EcoRake::Lib::People::SyncLaunch`
|
10
41
|
- New constant `TARGET_NAMESPACE`: to build up the target task based on a different namespace (i.e. not nested).
|
11
42
|
|
12
|
-
### Fixed
|
13
|
-
|
14
43
|
### Changed
|
15
44
|
|
16
45
|
- code tidy up
|
data/eco-rake.gemspec
CHANGED
@@ -24,14 +24,13 @@ Gem::Specification.new do |spec|
|
|
24
24
|
spec.required_ruby_version = '>= 3.2.2'
|
25
25
|
|
26
26
|
spec.add_development_dependency "rake", ">= 13.0.6", "< 14"
|
27
|
+
spec.add_development_dependency "redcarpet", ">= 3.6.0", "< 4"
|
27
28
|
spec.add_development_dependency "rspec", ">= 3.10.0", "< 4"
|
28
29
|
spec.add_development_dependency "yard", ">= 0.9.34", "< 1"
|
29
|
-
spec.add_development_dependency "redcarpet", ">= 3.6.0", "< 4"
|
30
30
|
|
31
|
-
#spec.add_dependency 'aws-sdk-s3', '>= 1.142.0', '< 2'
|
32
31
|
spec.add_dependency 'aws-sdk-ses', '~> 1', '>= 1.58.0'
|
33
32
|
spec.add_dependency 'dotenv', '~> 3'
|
34
33
|
spec.add_dependency 'nokogiri', '>= 1.13', '< 1.17'
|
35
|
-
spec.add_dependency 'rake-commander', '~> 0.4'
|
34
|
+
spec.add_dependency 'rake-commander', '~> 0.4.1'
|
36
35
|
spec.add_dependency 'sendgrid-ruby', '~> 6.7.0'
|
37
36
|
end
|
data/lib/eco-rake/base.rb
CHANGED
@@ -6,12 +6,14 @@ require_relative 'shell'
|
|
6
6
|
require_relative 'rake_task'
|
7
7
|
require_relative 'option'
|
8
8
|
require_relative 'options'
|
9
|
+
require_relative 'subtask'
|
9
10
|
|
10
11
|
class EcoRake
|
11
12
|
module Base
|
12
13
|
class << self
|
13
14
|
def included(base)
|
14
15
|
super
|
16
|
+
|
15
17
|
base.autoloads_children_of RakeCommander
|
16
18
|
base.extend ClassMethods
|
17
19
|
base.send :include, RakeTask
|
@@ -11,6 +11,7 @@ class EcoRake
|
|
11
11
|
INCLUDED_OPTIONS = %i[csv simulate].freeze
|
12
12
|
FORWARD_RULES = {
|
13
13
|
enviro: ->(enviro) { "-#{enviro}" },
|
14
|
+
space: :mirror,
|
14
15
|
simulate: '-simulate',
|
15
16
|
csv: '-csv',
|
16
17
|
full: ->(full) { full ? nil : '-delta' },
|
@@ -20,6 +21,7 @@ class EcoRake
|
|
20
21
|
options_with_defaults true
|
21
22
|
option '-s', '--simulate', TrueClass, 'Do a dry-run (with no changes)'
|
22
23
|
option '-e', '--enviro ENVIRO', String, desc: 'Target environment to run against (i.e. org, live)', required: true # , default_lookup: :default_enviro
|
24
|
+
option '-w', '--space SPACE', String, desc: 'Target space of the envionment (i.e. uat)'
|
23
25
|
option '-f', '--[no-]full', TrueClass, default: false, desc: 'If the PAYLOAD file is a full file (false: means delta)'
|
24
26
|
option '-c', '--csv', TrueClass, default: true, desc: 'Generate files in csv format?'
|
25
27
|
option '-a', '--asat [DATE]', Time, default: Time.now.iso8601, desc: 'Specifies the date when the export was done (default: now).' do |value|
|
@@ -63,14 +65,21 @@ class EcoRake
|
|
63
65
|
|
64
66
|
def forward_command(use, *opts)
|
65
67
|
raise "Expecting String with usecase. Given: #{use.class}" unless use.is_a?(String)
|
68
|
+
|
66
69
|
cmd = [base_command(use)]
|
67
70
|
cmd.push(*forward_options(*self.class::INCLUDED_OPTIONS, *opts))
|
71
|
+
|
68
72
|
cmd = yield(cmd) if block_given?
|
73
|
+
|
69
74
|
string_cmd(*cmd)
|
70
75
|
end
|
71
76
|
|
72
77
|
def base_command(use = nil)
|
73
|
-
string_cmd(
|
78
|
+
string_cmd(
|
79
|
+
ruby_runner,
|
80
|
+
forward_option(:enviro),
|
81
|
+
use
|
82
|
+
)
|
74
83
|
end
|
75
84
|
end
|
76
85
|
end
|
@@ -5,12 +5,13 @@ class EcoRake
|
|
5
5
|
options_with_defaults true
|
6
6
|
|
7
7
|
option '-e', '--enviro ENVIRO', String, desc: 'Target environment to run against (i.e. org, live)', required: true
|
8
|
+
option '-w', '--space SPACE', String, desc: 'Target space of the envionment (i.e. uat)'
|
8
9
|
option '-d', '--folder NAME', desc: 'Source local folder'
|
9
10
|
option '-l', '--list', TrueClass, desc: 'Lists files that will be deleted'
|
10
11
|
option '-o', '--older-than [DAYS]', Integer, desc: 'Number of days files to archive should be older than'
|
11
12
|
option '-r', '--remove', TrueClass, desc: "It deletes those files"
|
12
13
|
|
13
|
-
def task(*_args)
|
14
|
+
def task(*_args) # rubocop:disable Metrics/AbcSize
|
14
15
|
if target_files.empty?
|
15
16
|
puts "There were no files in folder '#{source_folder}' to be #{str_op}"
|
16
17
|
elsif options[:list]
|
@@ -4,6 +4,7 @@ class EcoRake
|
|
4
4
|
class Sftp < EcoRake::Lib::BaseTask
|
5
5
|
FORWARD_RULES = {
|
6
6
|
enviro: ->(enviro) { "-#{enviro}" },
|
7
|
+
space: :mirror,
|
7
8
|
folder: ->(folder) { "-local-folder #{folder}"},
|
8
9
|
list: '-list',
|
9
10
|
get_last: '-get-last',
|
@@ -16,6 +17,7 @@ class EcoRake
|
|
16
17
|
options_with_defaults true
|
17
18
|
|
18
19
|
option '-e', '--enviro ENVIRO', String, desc: 'Target environment to run against (i.e. org, live)', required: true
|
20
|
+
option '-w', '--space SPACE', String, desc: 'Target space of the envionment (i.e. uat)'
|
19
21
|
option '-d', '--folder NAME', default: '.', desc: 'Source local folder'
|
20
22
|
option '-l', '--list', TrueClass, desc: 'Lists available CSV feed files'
|
21
23
|
option '-g', '--get', TrueClass, desc: 'Gets all available CSV feed files'
|
@@ -49,7 +51,12 @@ class EcoRake
|
|
49
51
|
end
|
50
52
|
|
51
53
|
def base_command
|
52
|
-
string_cmd(
|
54
|
+
string_cmd(
|
55
|
+
ruby_runner,
|
56
|
+
forward_option(:enviro),
|
57
|
+
forward_option(:space),
|
58
|
+
'-sftp'
|
59
|
+
)
|
53
60
|
end
|
54
61
|
end
|
55
62
|
end
|
@@ -4,9 +4,11 @@ class EcoRake
|
|
4
4
|
# @todo on_error_email to ensure always notified
|
5
5
|
# @todo ping some back-end that it was run
|
6
6
|
# - Should be able to log at debug level.
|
7
|
+
# @note in integration repos this is used to be called `run:hris`
|
7
8
|
class SyncLaunch < EcoRake::Lib::People::BaseTask
|
8
9
|
ADDITIONAL_OPTIONS = %i[only_stats no_policy simulate no_email].freeze
|
9
10
|
FORWARD_RULES = {
|
11
|
+
space: :mirror,
|
10
12
|
schema: ->(schema) { "-schema-id \"#{schema}\"" },
|
11
13
|
only_stats: '-feed-only-stats',
|
12
14
|
no_policy: '-skip-batch-policy',
|
@@ -73,6 +75,7 @@ class EcoRake
|
|
73
75
|
cmd = []
|
74
76
|
cmd << ruby_runner
|
75
77
|
cmd << forward_option(:enviro)
|
78
|
+
cmd << forward_option(:space)
|
76
79
|
cmd << forward_option(:schema)
|
77
80
|
cmd << '-get-partial' if delta? || delta_last?
|
78
81
|
cmd << base_command(file)
|
@@ -83,7 +86,12 @@ class EcoRake
|
|
83
86
|
|
84
87
|
# Generate command string to get people
|
85
88
|
def people_get_command
|
86
|
-
string_cmd(
|
89
|
+
string_cmd(
|
90
|
+
ruby_runner,
|
91
|
+
forward_option(:enviro),
|
92
|
+
forward_option(:space),
|
93
|
+
'-get-people'
|
94
|
+
)
|
87
95
|
end
|
88
96
|
|
89
97
|
# Base command scoping.
|
@@ -120,7 +128,7 @@ class EcoRake
|
|
120
128
|
snapshot_mode.to_s.downcase.to_sym == :delta_last
|
121
129
|
end
|
122
130
|
|
123
|
-
#
|
131
|
+
# Among the `target_files`, the last in alphabetic order.
|
124
132
|
def latest_file
|
125
133
|
@latest_file ||= ''.then do
|
126
134
|
next options[:folder] if join_files
|
@@ -4,6 +4,7 @@ class EcoRake
|
|
4
4
|
class SyncOptions < EcoRake::Options::Set
|
5
5
|
option '-s', '--simulate', TrueClass, 'Do a dry-run (with no changes)'
|
6
6
|
option '-e', '--enviro ENVIRO', String, desc: 'Target environment to run against (i.e. org, live)', required: true
|
7
|
+
option '-w', '--space SPACE', String, desc: 'Target space of the envionment (i.e. uat)'
|
7
8
|
option '-c', '--schema NAME', "Target person schema."
|
8
9
|
option '-d', '--folder NAME', desc: 'Source local folder'
|
9
10
|
option '-o', '--only-stats', TrueClass, desc: 'To display only stats in the feedback'
|
@@ -2,6 +2,7 @@ class EcoRake
|
|
2
2
|
module Lib
|
3
3
|
module People
|
4
4
|
# The top level task that organizes all the people sync
|
5
|
+
# @note in integration repos this is used to be called `run:feed`
|
5
6
|
class SyncProcess < EcoRake::Lib::People::SyncRely
|
6
7
|
attr_const :do_decrypt, default: false
|
7
8
|
attr_const :pull_driver, default: 'sftp'
|
@@ -11,10 +12,11 @@ class EcoRake
|
|
11
12
|
option_reopen :enviro, default_lookup: :target_enviro
|
12
13
|
|
13
14
|
attr_const :local_folder, default: '.'
|
14
|
-
attr_const :mail_to
|
15
|
-
|
16
15
|
option_reopen :folder, default_lookup: :local_folder
|
17
16
|
|
17
|
+
attr_const :mail_to
|
18
|
+
attr_const :remote_archive, default: true
|
19
|
+
|
18
20
|
def task(*_args)
|
19
21
|
upsert_local_dir(options[:folder])
|
20
22
|
sh_continue pull_file
|
@@ -23,7 +25,7 @@ class EcoRake
|
|
23
25
|
sh_continue rake_sync_command
|
24
26
|
return if options[:simulate]
|
25
27
|
|
26
|
-
sh_continue rake_sftp_archive if pull_driver == 'sftp'
|
28
|
+
sh_continue rake_sftp_archive if remote_archive && pull_driver == 'sftp'
|
27
29
|
sh_continue rake_files_purge('cache')
|
28
30
|
sh_continue rake_files_purge('requests')
|
29
31
|
end
|
@@ -40,15 +42,15 @@ class EcoRake
|
|
40
42
|
end
|
41
43
|
|
42
44
|
def rake_sftp_get
|
43
|
-
rake_command('csv:sftp', *forward_options(:enviro, :folder), '-t')
|
45
|
+
rake_command('csv:sftp', *forward_options(:enviro, :space, :folder), '-t')
|
44
46
|
end
|
45
47
|
|
46
48
|
def rake_url_get
|
47
|
-
rake_command("csv:#{options[:enviro]}:url", *forward_options(:folder))
|
49
|
+
rake_command("csv:#{options[:enviro]}:url", *forward_options(:space, :folder))
|
48
50
|
end
|
49
51
|
|
50
52
|
def rake_sftp_archive
|
51
|
-
rake_command('csv:sftp', *forward_options(:enviro, :folder), '-a')
|
53
|
+
rake_command('csv:sftp', *forward_options(:enviro, :space, :folder), '-a')
|
52
54
|
end
|
53
55
|
|
54
56
|
def rake_decrypt
|
@@ -56,7 +58,7 @@ class EcoRake
|
|
56
58
|
end
|
57
59
|
|
58
60
|
def rake_files_purge(folder, operation: '--remove')
|
59
|
-
rake_command('logs:purge', *forward_options(:enviro), "-d #{folder}", operation)
|
61
|
+
rake_command('logs:purge', *forward_options(:enviro, :space), "-d #{folder}", operation)
|
60
62
|
end
|
61
63
|
|
62
64
|
def failed_decryption_notify
|
@@ -64,7 +66,7 @@ class EcoRake
|
|
64
66
|
puts msg
|
65
67
|
exit 1 if options[:simulate]
|
66
68
|
exit 1 if options[:no_email]
|
67
|
-
exit 1 unless inbox = mail_to
|
69
|
+
exit 1 unless (inbox = mail_to)
|
68
70
|
|
69
71
|
email(enviro: target_enviro, to: inbox, subject: msg, body: msg)
|
70
72
|
exit 1
|
@@ -4,6 +4,7 @@ class EcoRake
|
|
4
4
|
class RunnerLaunch < EcoRake::Lib::BaseTask
|
5
5
|
FORWARD_RULES = {
|
6
6
|
enviro: ->(enviro) { "-#{enviro}"},
|
7
|
+
space: :mirror,
|
7
8
|
simulate: '-simulate'
|
8
9
|
}.freeze
|
9
10
|
|
@@ -13,20 +14,62 @@ class EcoRake
|
|
13
14
|
attr_const :target_enviro, required: true
|
14
15
|
option_reopen :enviro, default_lookup: :target_enviro
|
15
16
|
|
17
|
+
option_reopen :task, type: [], desc: 'Target task to run', required: true
|
18
|
+
|
19
|
+
# Offer native way to declare tasks
|
20
|
+
class << self
|
21
|
+
def subtask(name, desc = nil, **kargs, &block)
|
22
|
+
EcoRake::Subtask.new(name, desc, **kargs, &block).tap do |subtask|
|
23
|
+
raise "Task '#{name}' is already defined" if subtasks.key?(subtask.name)
|
24
|
+
|
25
|
+
option_get(:task).tap do |option|
|
26
|
+
option.enum_options.push(subtask.name)
|
27
|
+
subtasks[subtask.name] = subtask
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
def subtasks
|
33
|
+
@subtasks ||= {}
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
16
37
|
option_forwarding(**FORWARD_RULES)
|
17
38
|
|
39
|
+
def task(*args)
|
40
|
+
if (callback = target_subtask.callback)
|
41
|
+
instance_exec(*args, &callback)
|
42
|
+
elsif respond_to?(target_subtask.name, true)
|
43
|
+
send(target_subtask.name)
|
44
|
+
else
|
45
|
+
msg = "Undefined method to perform '#{target_subtask.name}'"
|
46
|
+
raise msg
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
protected
|
51
|
+
|
52
|
+
def target_subtask
|
53
|
+
subtask_name = options[:task].to_sym
|
54
|
+
self.class.subtasks[subtask_name].tap do |ts|
|
55
|
+
next if ts
|
56
|
+
|
57
|
+
raise "Couldn't find any (sub)task named '#{subtask_name}'"
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
18
61
|
private
|
19
62
|
|
20
63
|
def command(*args)
|
21
64
|
cmd = [ruby_runner]
|
22
|
-
cmd.push(*forward_options(:enviro, :simulate))
|
65
|
+
cmd.push(*forward_options(:enviro, :space, :simulate))
|
23
66
|
cmd.push(*args)
|
24
67
|
cmd = yield(cmd) if block_given?
|
25
68
|
string_cmd(*cmd)
|
26
69
|
end
|
27
70
|
|
28
71
|
def people_get_command
|
29
|
-
string_cmd(ruby_runner,
|
72
|
+
string_cmd(ruby_runner, *forward_options(:enviro, :space), '-get-people')
|
30
73
|
end
|
31
74
|
end
|
32
75
|
end
|
@@ -4,6 +4,7 @@ class EcoRake
|
|
4
4
|
class RunnerOptions < EcoRake::Options::Set
|
5
5
|
option '-s', '--simulate', TrueClass, 'Do a dry-run (with no changes)'
|
6
6
|
option '-e', '--enviro ENVIRO', String, desc: 'Target environment to run against (i.e. org, live)', required: true
|
7
|
+
option '-w', '--space SPACE', String, desc: 'Target space of the envionment (i.e. uat)'
|
7
8
|
option '-t', '--task NAME', String, desc: 'Target task to run', required: true
|
8
9
|
end
|
9
10
|
end
|
@@ -6,7 +6,8 @@ class EcoRake
|
|
6
6
|
module DefaultLookup
|
7
7
|
class << self
|
8
8
|
def included(base)
|
9
|
-
super
|
9
|
+
super
|
10
|
+
|
10
11
|
base.extend EcoRake::Base::SymbolResolver
|
11
12
|
end
|
12
13
|
end
|
@@ -14,6 +15,7 @@ class EcoRake
|
|
14
15
|
# Default may be a lookup
|
15
16
|
def default(&block)
|
16
17
|
return @default unless default_lookup?
|
18
|
+
|
17
19
|
result = self.class.safe_call(@default, parent, &block)
|
18
20
|
result = self.class.safe_call(result, &block) if [Proc, Method].any? {|k| result.is_a?(k)}
|
19
21
|
result
|
@@ -23,9 +25,11 @@ class EcoRake
|
|
23
25
|
# @return [Class, NilClass]
|
24
26
|
def type_coercion
|
25
27
|
return @type_coercion if @type_coercion
|
26
|
-
return
|
28
|
+
return unless default?
|
29
|
+
|
27
30
|
value = default
|
28
|
-
return
|
31
|
+
return if value.nil?
|
32
|
+
|
29
33
|
value.class
|
30
34
|
end
|
31
35
|
|
@@ -24,7 +24,7 @@ class EcoRake
|
|
24
24
|
opt = name_hyphened
|
25
25
|
# puts "boolean_mirror (#{value}): #{opt}" if name == :no_get
|
26
26
|
|
27
|
-
return
|
27
|
+
return unless [TrueClass, NilClass, FalseClass].any? {|klass| type_coercion == klass}
|
28
28
|
|
29
29
|
enabled_value = !boolean_name? || [TrueClass, NilClass].any? {|klass| type_coercion == klass}
|
30
30
|
return opt if value == enabled_value
|
@@ -3,7 +3,7 @@ class EcoRake
|
|
3
3
|
module Parented
|
4
4
|
attr_accessor :parent
|
5
5
|
|
6
|
-
def initialize(*args, _parent: nil, **kargs, &block)
|
6
|
+
def initialize(*args, _parent: nil, **kargs, &block) # rubocop:disable Lint/UnderscorePrefixedVariableName
|
7
7
|
self.parent = _parent
|
8
8
|
super(*args, **kargs, &block)
|
9
9
|
end
|
@@ -17,6 +17,7 @@ class EcoRake
|
|
17
17
|
# Iterator
|
18
18
|
def each(&block)
|
19
19
|
return to_enum(:each) unless block_given?
|
20
|
+
|
20
21
|
sets.values.each(&block)
|
21
22
|
end
|
22
23
|
|
@@ -29,12 +30,13 @@ class EcoRake
|
|
29
30
|
# @return [Boolean]
|
30
31
|
def set?(name)
|
31
32
|
raise "Expected String or Symbol. Given: #{name.class}" unless name.respond_to?(:to_sym)
|
33
|
+
|
32
34
|
sets.key?(name.to_sym)
|
33
35
|
end
|
34
36
|
|
35
37
|
# @return [Array<Symbol>] names list of all available option sets.
|
36
38
|
def names
|
37
|
-
|
39
|
+
sets.keys
|
38
40
|
end
|
39
41
|
|
40
42
|
# Add a new options set.
|
data/lib/eco-rake/version.rb
CHANGED
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.
|
4
|
+
version: 0.2.9
|
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:
|
11
|
+
date: 2025-02-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -31,12 +31,12 @@ dependencies:
|
|
31
31
|
- !ruby/object:Gem::Version
|
32
32
|
version: '14'
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
|
-
name:
|
34
|
+
name: redcarpet
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
36
36
|
requirements:
|
37
37
|
- - ">="
|
38
38
|
- !ruby/object:Gem::Version
|
39
|
-
version: 3.
|
39
|
+
version: 3.6.0
|
40
40
|
- - "<"
|
41
41
|
- !ruby/object:Gem::Version
|
42
42
|
version: '4'
|
@@ -46,50 +46,50 @@ dependencies:
|
|
46
46
|
requirements:
|
47
47
|
- - ">="
|
48
48
|
- !ruby/object:Gem::Version
|
49
|
-
version: 3.
|
49
|
+
version: 3.6.0
|
50
50
|
- - "<"
|
51
51
|
- !ruby/object:Gem::Version
|
52
52
|
version: '4'
|
53
53
|
- !ruby/object:Gem::Dependency
|
54
|
-
name:
|
54
|
+
name: rspec
|
55
55
|
requirement: !ruby/object:Gem::Requirement
|
56
56
|
requirements:
|
57
57
|
- - ">="
|
58
58
|
- !ruby/object:Gem::Version
|
59
|
-
version:
|
59
|
+
version: 3.10.0
|
60
60
|
- - "<"
|
61
61
|
- !ruby/object:Gem::Version
|
62
|
-
version: '
|
62
|
+
version: '4'
|
63
63
|
type: :development
|
64
64
|
prerelease: false
|
65
65
|
version_requirements: !ruby/object:Gem::Requirement
|
66
66
|
requirements:
|
67
67
|
- - ">="
|
68
68
|
- !ruby/object:Gem::Version
|
69
|
-
version:
|
69
|
+
version: 3.10.0
|
70
70
|
- - "<"
|
71
71
|
- !ruby/object:Gem::Version
|
72
|
-
version: '
|
72
|
+
version: '4'
|
73
73
|
- !ruby/object:Gem::Dependency
|
74
|
-
name:
|
74
|
+
name: yard
|
75
75
|
requirement: !ruby/object:Gem::Requirement
|
76
76
|
requirements:
|
77
77
|
- - ">="
|
78
78
|
- !ruby/object:Gem::Version
|
79
|
-
version:
|
79
|
+
version: 0.9.34
|
80
80
|
- - "<"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: '
|
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:
|
89
|
+
version: 0.9.34
|
90
90
|
- - "<"
|
91
91
|
- !ruby/object:Gem::Version
|
92
|
-
version: '
|
92
|
+
version: '1'
|
93
93
|
- !ruby/object:Gem::Dependency
|
94
94
|
name: aws-sdk-ses
|
95
95
|
requirement: !ruby/object:Gem::Requirement
|
@@ -150,14 +150,14 @@ dependencies:
|
|
150
150
|
requirements:
|
151
151
|
- - "~>"
|
152
152
|
- !ruby/object:Gem::Version
|
153
|
-
version:
|
153
|
+
version: 0.4.1
|
154
154
|
type: :runtime
|
155
155
|
prerelease: false
|
156
156
|
version_requirements: !ruby/object:Gem::Requirement
|
157
157
|
requirements:
|
158
158
|
- - "~>"
|
159
159
|
- !ruby/object:Gem::Version
|
160
|
-
version:
|
160
|
+
version: 0.4.1
|
161
161
|
- !ruby/object:Gem::Dependency
|
162
162
|
name: sendgrid-ruby
|
163
163
|
requirement: !ruby/object:Gem::Requirement
|
@@ -245,6 +245,7 @@ files:
|
|
245
245
|
- lib/eco-rake/shell/eco_helpers.rb
|
246
246
|
- lib/eco-rake/shell/files.rb
|
247
247
|
- lib/eco-rake/shell/gpg.rb
|
248
|
+
- lib/eco-rake/subtask.rb
|
248
249
|
- lib/eco-rake/utils.rb
|
249
250
|
- lib/eco-rake/utils/mailer.rb
|
250
251
|
- lib/eco-rake/utils/mailer/aws_provider.rb
|