rumrunner 0.2.2 → 0.2.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3f5c7dac4315813fa3843d94e075608585d4e6cdd9c1b52f6c447b8981ada492
4
- data.tar.gz: 778ac8a9026a12e33edee3af59ea0e3d66b363d7eeee8ee88c4c777e98ffee86
3
+ metadata.gz: 14bdd585158d5a24f0caa7868eeb5e8ef19bd54055950839f6dce9e6b134435d
4
+ data.tar.gz: 240eab4bc1a0abaf9ba38e431f2d01af211a37b601c0ae3e2f764f858a2d04e0
5
5
  SHA512:
6
- metadata.gz: ef19b7605a22e532753f2c6eefa7fdeadd51584a6804dea22b57cedf36e38441e0125c34756e7445952d3bce5aff2764232aa0a13d305b148335fb2787424f96
7
- data.tar.gz: a48ff0e320ea4b6c5a7521d734da3b4871ce0fb9822ae7fc6deb36a80e8c7b3c44863a1e76ee30d243c144f5d9c87431f0a5ef017bc74d0ea71f6a39bda1fffd
6
+ metadata.gz: 93761c6971fe01063ae6c91f26a2ee19c2bbbab0a52e8027d5d0c2536f7f5201f6cfa0cd4d41ff9b3efd195d3392b1083c62b7449696f995bef062a69c8112ef
7
+ data.tar.gz: c867c322254c754b275f90d66b5ed10f5082ca6185b7e59e24d24b7e4a5403e3e299aa9736df26ffeed6efdb859eb6d50916ab3743ec0099817d4e861aad1190
@@ -2,18 +2,33 @@ require "rumrunner/docker"
2
2
 
3
3
  module Rum
4
4
  class << self
5
- def init
5
+ def init(input = nil, stdin = $stdin, stdout = $stdout, stderr = $stderr)
6
6
  # Get image name from stdin
7
- $stderr.write "Docker image name: "
8
- image = Docker::Image.parse(gets.chomp)
7
+ stderr.write "Docker image name [#{default = File.split(Dir.pwd).last}]: "
8
+ input ||= stdin.gets.chomp
9
+ image = Docker::Image.parse(input.empty? ? default : input)
9
10
 
10
- puts "#!/usr/bin/env ruby"
11
- puts "rum :\"#{image.family}\" do"
12
- File.read("Dockerfile").scan(/^FROM .*?$/).each_with_index do |line, i|
13
- stage = line.scan(/ AS (.*?)$/).flatten.first || i.to_s
14
- puts " stage :\"#{stage}\""
15
- end if File.exists? "Dockerfile"
16
- puts "end"
11
+ # Begin Rumfile
12
+ stdout.write "#!/usr/bin/env ruby\n"
13
+ stdout.write "rum :\"#{image.family}\" do\n"
14
+
15
+ # Put stages
16
+ if File.exists? "Dockerfile"
17
+ lines = File.read("Dockerfile").scan(/^FROM .*?$/)
18
+ stages = lines.each_with_index.map do |line, i|
19
+ line.scan(/ AS (.*?)$/).flatten.first || i.to_s
20
+ end
21
+ stages.reverse.zip(stages.reverse[1..-1]).reverse.each do |stage, dep|
22
+ if dep.nil?
23
+ stdout.write " stage :\"#{stage}\"\n"
24
+ else
25
+ stdout.write " stage :\"#{stage}\" => :\"#{dep}\"\n"
26
+ end
27
+ end
28
+ end
29
+
30
+ # Fin
31
+ stdout.write "end\n"
17
32
  end
18
33
  end
19
34
  end
@@ -1,3 +1,3 @@
1
1
  module Rum
2
- VERSION = "0.2.2"
2
+ VERSION = "0.2.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rumrunner
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexander Mancevice