rake_script 0.2.0 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +4 -0
- data/lib/rake_script/file_system.rb +19 -0
- data/lib/rake_script/shell.rb +5 -5
- data/lib/rake_script/version.rb +1 -1
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8cc103a638ff21e24588737201910ec53ed682abb285567f0cd6e21bd5e6b66e
|
4
|
+
data.tar.gz: b11cbc1465ce68e498321533470f423764e171e4d5e3addcad1f9f25c3790ae7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c0ea2e5bc75e86bf9b7445873493e9613bc32249260eaec5714f2a66077c0e5dbbf421dac0036aacc8e020b6aa1ac01c6cfeed0e336e120e31d6bc51e208328b
|
7
|
+
data.tar.gz: 3e1325f937068bf7afa760c79bc41d8ee1b305f07973dcaaad8c7aa79c061b0146506f6430548d49d7c39c2f190e99108627afd1783ac532a0a48a6f374f955b
|
data/.travis.yml
ADDED
@@ -20,6 +20,7 @@ module RakeScript
|
|
20
20
|
result.push(flag.to_s)
|
21
21
|
end
|
22
22
|
end
|
23
|
+
result
|
23
24
|
end
|
24
25
|
|
25
26
|
def remove_rf(*paths)
|
@@ -52,5 +53,23 @@ module RakeScript
|
|
52
53
|
def chdir(path)
|
53
54
|
Dir.chdir(path) { yield }
|
54
55
|
end
|
56
|
+
|
57
|
+
def append_file(filepath, string, verbose: false, before: nil, after: nil)
|
58
|
+
raise ArgumentError, "can't use :before and :after in same time" if before && after
|
59
|
+
|
60
|
+
after_index = nil
|
61
|
+
if after || before
|
62
|
+
content = File.read(filepath)
|
63
|
+
after_index = content.index(after || before)
|
64
|
+
return if after_index.nil?
|
65
|
+
end
|
66
|
+
after_index -= before.size if after_index && before
|
67
|
+
|
68
|
+
File.open(filepath, 'a+') do |f|
|
69
|
+
f.seek(after_index, IO::SEEK_SET) if after_index
|
70
|
+
f.write(string)
|
71
|
+
end
|
72
|
+
puts("Append #{string.inspect} to #{filepath}") if verbose
|
73
|
+
end
|
55
74
|
end
|
56
75
|
end
|
data/lib/rake_script/shell.rb
CHANGED
@@ -33,12 +33,12 @@ module RakeScript
|
|
33
33
|
options = arguments.last.is_a?(Hash) ? arguments.pop : {}
|
34
34
|
|
35
35
|
# extract option keys
|
36
|
-
stdout = options
|
37
|
-
stderr = options
|
38
|
-
env = options
|
36
|
+
stdout = options.fetch(:stdout) { proc { |raw_line| STDOUT.puts(raw_line) } }
|
37
|
+
stderr = options.fetch(:stderr) { proc { |raw_line| STDERR.puts(raw_line) } }
|
38
|
+
env = options.fetch(:env, {})
|
39
39
|
debug = options.fetch(:debug, true)
|
40
|
-
debug_color = options
|
41
|
-
debug_style = options
|
40
|
+
debug_color = options.fetch(:debug_color, :light_cyan)
|
41
|
+
debug_style = options.fetch(:debug_style, :underlined)
|
42
42
|
|
43
43
|
# calculating command line
|
44
44
|
env_str = env.map { |k, v| "#{k}=#{v}" }.join(' ')
|
data/lib/rake_script/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rake_script
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Denis Talakevich
|
@@ -45,6 +45,7 @@ extensions: []
|
|
45
45
|
extra_rdoc_files: []
|
46
46
|
files:
|
47
47
|
- ".gitignore"
|
48
|
+
- ".travis.yml"
|
48
49
|
- Gemfile
|
49
50
|
- LICENSE.txt
|
50
51
|
- README.md
|