Class: Dockit::Image
- Inherits:
-
Object
- Object
- Dockit::Image
- Defined in:
- lib/dockit/image.rb
Instance Attribute Summary collapse
-
#image ⇒ Object
readonly
Returns the value of attribute image.
Class Method Summary collapse
- .clean(force: false) ⇒ Object
- .create(config) ⇒ Object
- .get(name) ⇒ Object
- .list(all: false, filters: nil) ⇒ Object
Instance Attribute Details
#image ⇒ Object (readonly)
Returns the value of attribute image.
3 4 5 |
# File 'lib/dockit/image.rb', line 3 def image @image end |
Class Method Details
.clean(force: false) ⇒ Object
36 37 38 39 40 41 42 43 44 |
# File 'lib/dockit/image.rb', line 36 def clean(force: false) list( all: force, filters: force ? nil : {dangling: ['true']} ).each do |image| puts " #{image.id}" image.remove(force: true) end end |
.create(config) ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/dockit/image.rb', line 10 def create(config) unless config STDERR.puts "No build target configured" return end repos = config['t'] puts "Building #{repos}" image = Docker::Image.build_from_dir('.', config) do |chunk| begin chunk = JSON.parse(chunk) progress = chunk['progress'] id = progress ? '' : chunk['id'] print chunk['stream'] ? chunk['stream'] : [chunk['status'], id, progress, progress ? "\r" : "\n"].join(' ') rescue puts chunk end end image end |
.get(name) ⇒ Object
32 33 34 |
# File 'lib/dockit/image.rb', line 32 def get(name) Docker::Image.get(name) end |
.list(all: false, filters: nil) ⇒ Object
6 7 8 |
# File 'lib/dockit/image.rb', line 6 def list(all: false, filters: nil) Docker::Image.all(all: all, filters: JSON.dump(filters)) end |