prep_kit 0.1.2 → 0.1.3

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
  SHA1:
3
- metadata.gz: 55005627e10ced86563cd082f9822e176e7d0ebb
4
- data.tar.gz: 81eed2464b0a4873c6fdf151918943b874177c9d
3
+ metadata.gz: e3d19e308a123f5b2686337958d4f3ef6c7bd6a2
4
+ data.tar.gz: 5787fc53c30d528207b3768771b85e80d2173ce3
5
5
  SHA512:
6
- metadata.gz: 9d95e82a1031f1c80b402234924f278c044d1ee12fd7b0a7d3b4eea5146d1ba722f0c59db938d01e58e47ceab33573c8af92a938bfaf29205a62c7be6c69bcf6
7
- data.tar.gz: 0473e4837ceb551d6ca73e5bfafadf1162a54b16b6417b54c7264aeaee20012a498fb7e236faaf97938cd5c400924e8bfcdaee103030e128eed10962ede7f263
6
+ metadata.gz: 72aa309df451175c6f7829f95de25455b8227bec20e51c6f30b1237a2a645ffbe9f62fd3a99c2bce11d6d4207b62bd5bf8a47153bdbb860acd230f7f40bebda9
7
+ data.tar.gz: ce2e6cfd9d88ab578bdd32a749a73e532b1247961df023db8748ea9291eaadf73d6d403a4748106a7c0c978db70327f302fb8e2837b0072c2fd7826f3b373e48
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- prep_kit (0.1.2)
4
+ prep_kit (0.1.3)
5
5
  remote_marshal
6
6
 
7
7
  GEM
@@ -1,8 +1,9 @@
1
1
  module PrepKit
2
2
  class Context
3
3
  def initialize(host, user, options = {})
4
- @vars = {}
5
- @env = RemoteMarshal.new(host, user, options)
4
+ @vars = {}
5
+ @env = RemoteMarshal.new(host, user, options)
6
+ @memoized = {}
6
7
  end
7
8
 
8
9
  def task(name, &block)
@@ -24,11 +25,17 @@ module PrepKit
24
25
  def sh(command)
25
26
  PrepKit.logger.info "sh: #{command}"
26
27
 
27
- status, output, error = @env.exec!(command)
28
+ output = @memoized.fetch(command) do
29
+ status, output, error = @env.exec!(command)
28
30
 
29
- raise RuntimeError, error unless status == 0
31
+ raise RuntimeError, error unless status == 0
30
32
 
31
- output.tap { |output| PrepKit.logger.info ("<-\n" + output) }
33
+ @memoized[command] = '[SKIP]'
34
+
35
+ "<- \n" + output
36
+ end
37
+
38
+ output.tap { |output| PrepKit.logger.info output }
32
39
  end
33
40
 
34
41
  def test?(path, option)
data/lib/prep_kit/task.rb CHANGED
@@ -26,9 +26,9 @@ module PrepKit
26
26
  def within(directory, &block)
27
27
  PrepKit.logger.info "within: #{directory}"
28
28
 
29
- directory = current_directory(directory)
29
+ absolute_directory = current_directory(directory)
30
30
 
31
- raise RuntimeError, directory unless test?(directory, '-d')
31
+ raise RuntimeError, directory unless test?(absolute_directory, '-d')
32
32
 
33
33
  Task.new(self, directory).action &block
34
34
  end
@@ -1,3 +1,3 @@
1
1
  module PrepKit
2
- VERSION = "0.1.2"
2
+ VERSION = "0.1.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: prep_kit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - daisuko