linecook-gem 0.7.2 → 0.7.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
  SHA1:
3
- metadata.gz: 3b1bfd465b9a947d4dc9327697ac2119c926cf6d
4
- data.tar.gz: 099a8215f93a65f3de819039dec6e0c44a7234e6
3
+ metadata.gz: 5e78c53c1e83145109b3ab202160bf5c4faec69f
4
+ data.tar.gz: 5a1b403b3f344fe357d5dec040c095c2545e5f9f
5
5
  SHA512:
6
- metadata.gz: b20b96b0d98fb5f6079e0c4742d0d0a28e4969072148ddfede37219b0313bcd98f503d54342473991dd5411a716ff38e2522e92aa5ea9d29bc4dfc7e1251fc96
7
- data.tar.gz: 1447f5a54dddf2bf44fa4a838afbda701efe9335472f0bf8293a6fa0abb36ae1b184548336af047f55beb4f9f0c12aad05d29f8679fd42acd3863d3588eb8559
6
+ metadata.gz: 55302b7abbc4388af5abd732b49d1c76b6ef168621bfe6b32dd3de3bc52f906c9f8264f6c5618a773ada7f1bdb5d8a1ddd67372251a05d545268438706f49cb8
7
+ data.tar.gz: 880e4a9b214a59b5b39ec8bd871c9bf6c87f3734aacee5cad896b3b6abcf68ec5de3ce0c4ecf0b759a0d88f8f0452e35aebfb690e7aaac47ee137122ce4cc41d
@@ -73,17 +73,27 @@ module Linecook
73
73
  def clean_older_images(image)
74
74
  puts "Cleaning up older images for #{image.group}..."
75
75
  older_images(image).each do |old|
76
- id = old.info['RepoTags'].first
77
- puts "Removing #{id}"
78
- begin
79
- old.remove(force: true)
80
- rescue ::Docker::Error::ConflictError => e
81
- puts "Failed to remove #{id}"
82
- puts e.message
76
+ children(old).each do |child|
77
+ remove_docker_image(child)
83
78
  end
79
+ remove_docker_image(old)
84
80
  end
85
81
  end
86
82
 
83
+ def remove_docker_image(docker_image)
84
+ puts "Removing #{docker_image.id}"
85
+ docker_image.remove(force: false)
86
+ rescue ::Docker::Error::ConflictError => e
87
+ puts "Failed to remove #{docker_image.id}"
88
+ puts e.message
89
+ end
90
+
91
+ def children(parent_image)
92
+ ::Docker::Image.all.select do |docker_image|
93
+ docker_image.info['ParentId'] == parent_image.id
94
+ end.compact
95
+ end
96
+
87
97
  def older_images(image)
88
98
  ::Docker::Image.all.select do |docker_image|
89
99
  group, tag = docker_image.info['RepoTags'].first.split(':')
@@ -1,3 +1,3 @@
1
1
  module Linecook
2
- VERSION = '0.7.2'
2
+ VERSION = '0.7.3'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: linecook-gem
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.2
4
+ version: 0.7.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dale Hamel