nutkins 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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7180a966807e27688ba070e225f11faad2f46dbc
4
- data.tar.gz: 4a7427067089d88a6a82d576ae7089293fd18cfd
3
+ metadata.gz: 81e39fa94b02bf61d5ddfe5ebc3576d16fa997d7
4
+ data.tar.gz: 981ebad358ce8c793b30e6b93d6e58a0fe354593
5
5
  SHA512:
6
- metadata.gz: 4f32b2b6fd85b135b5c492450277a354375b1a64cb6128af26223fb1e3715cd61f066892837048a54aef03b4292f5004f2c6653e2acf5e27a575aa54a45c3c0c
7
- data.tar.gz: 39f709c64bfe4f7ef19f6286c21562b1fbe4ef5aec90f65f2ba64557fb287c68ccaf12fc7cdea6db3a61ec4e6642b54e8cbeb53bf57046c04d92919d3000f660
6
+ metadata.gz: 1f2f6671e0d59fe84696a5d51ee18d555f5c2bd65900c81a20a1c7016962aae968dd7825831b998045b1631462e72824e218bcfcd6738e6d4a0219732a0229eb
7
+ data.tar.gz: 4bbd8ceb51f5c6b4ea8fb4724dcdf9408d7a7587eeea70936dc7ed069cddf6620840305f20f9b70447752d0feca918110ce90aa20710d1a72b828baf06954f40
data/bin/nutkins CHANGED
@@ -27,6 +27,7 @@ module Nutkins::Command
27
27
  op.subcommand 'build,b *names', 'build docker image from dockerfile'
28
28
 
29
29
  op.subcommand 'create,c *names', 'create container from image' do |subop|
30
+ subop.on '-r', '--reuse', 'reuse previously built image', 'reuse'
30
31
  subop.on '-p', '--preserve', 'preserve existing container', 'preserve'
31
32
  end
32
33
 
@@ -64,7 +65,7 @@ module Nutkins::Command
64
65
  config.names.each &nutkins.method(:build)
65
66
  when 'create'
66
67
  config.names.each do |name|
67
- nutkins.create name, preserve: config.preserve
68
+ nutkins.create name, preserve: config.preserve, reuse: config.reuse
68
69
  end
69
70
  when 'delete'
70
71
  config.names.each &nutkins.method(:delete)
@@ -1,3 +1,3 @@
1
1
  module Nutkins
2
- VERSION = "0.2.0"
2
+ VERSION = "0.3.0"
3
3
  end
data/lib/nutkins.rb CHANGED
@@ -54,7 +54,7 @@ module Nutkins
54
54
  end
55
55
  end
56
56
 
57
- def create img_name, preserve: false, docker_args: []
57
+ def create img_name, preserve: false, docker_args: [], reuse: false
58
58
  flags = []
59
59
  cfg = get_image_config img_name
60
60
  create_cfg = cfg["create"]
@@ -77,6 +77,16 @@ module Nutkins
77
77
 
78
78
  tag = cfg['tag']
79
79
  prev_container_id = Docker.container_id_for_tag tag unless preserve
80
+
81
+ if not reuse
82
+ if prev_container_id
83
+ puts "deleting previous container #{prev_container_id}"
84
+ Docker.run "rm", prev_container_id
85
+ prev_container_id = nil
86
+ end
87
+ build img_name
88
+ end
89
+
80
90
  puts "creating new docker image"
81
91
  unless Docker.run "create", "-it", *flags, tag, *docker_args
82
92
  raise "failed to create `#{img_name}' container"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nutkins
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Pike