nutkins 0.2.0 → 0.3.0

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: 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