linecook-gem 0.7.2 → 0.7.3

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