@@ -67,18 +67,14 @@ func checkFilenameFlag(_ []string) error {
67
67
return nil
68
68
}
69
69
}
70
- return errors .New ("Please include --types=file with the --filename flag" )
70
+ return errors .New ("please include --types=file with the --filename flag" )
71
71
}
72
72
73
73
func processImage (imageName string , imageMap map [string ]* pkgutil.Image , wg * sync.WaitGroup , errChan chan <- error ) {
74
74
defer wg .Done ()
75
75
image , err := getImageForName (imageName )
76
- if image .Image == nil {
77
- errChan <- fmt .Errorf ("error retrieving image %s: %s" , imageName , err .Error ())
78
- return
79
- }
80
76
if err != nil {
81
- logrus . Warningf ( "diff may be inaccurate : %s" , err )
77
+ errChan <- fmt . Errorf ( "error retrieving image %s : %s", imageName , err )
82
78
}
83
79
imageMap [imageName ] = & image
84
80
}
@@ -103,6 +99,11 @@ func diffImages(image1Arg, image2Arg string, diffArgs []string) error {
103
99
wg .Wait ()
104
100
close (errChan )
105
101
102
+ if noCache && ! save {
103
+ defer pkgutil .CleanupImage (* imageMap [image1Arg ])
104
+ defer pkgutil .CleanupImage (* imageMap [image2Arg ])
105
+ }
106
+
106
107
errs := []string {}
107
108
for {
108
109
err , ok := <- errChan
@@ -116,28 +117,14 @@ func diffImages(image1Arg, image2Arg string, diffArgs []string) error {
116
117
return errors .New (strings .Join (errs , "\n " ))
117
118
}
118
119
119
- img1 , ok := imageMap [image1Arg ]
120
- if ! ok {
121
- return fmt .Errorf ("cannot find image %s" , image1Arg )
122
- }
123
- img2 , ok := imageMap [image2Arg ]
124
- if ! ok {
125
- return fmt .Errorf ("cannot find image %s" , image2Arg )
126
- }
127
-
128
- if noCache && ! save {
129
- defer pkgutil .CleanupImage (* imageMap [image1Arg ])
130
- defer pkgutil .CleanupImage (* imageMap [image2Arg ])
131
- }
132
-
133
120
logrus .Info ("computing diffs" )
134
121
req := differs.DiffRequest {
135
- Image1 : * img1 ,
136
- Image2 : * img2 ,
122
+ Image1 : * imageMap [ image1Arg ] ,
123
+ Image2 : * imageMap [ image2Arg ] ,
137
124
DiffTypes : diffTypes }
138
125
diffs , err := req .GetDiff ()
139
126
if err != nil {
140
- return fmt .Errorf ("Could not retrieve diff: %s" , err )
127
+ return fmt .Errorf ("could not retrieve diff: %s" , err )
141
128
}
142
129
outputResults (diffs )
143
130
@@ -150,7 +137,7 @@ func diffImages(image1Arg, image2Arg string, diffArgs []string) error {
150
137
}
151
138
152
139
if noCache && save {
153
- logrus .Infof ("Images were saved at %s and %s" , imageMap [image1Arg ].FSPath ,
140
+ logrus .Infof ("images were saved at %s and %s" , imageMap [image1Arg ].FSPath ,
154
141
imageMap [image2Arg ].FSPath )
155
142
}
156
143
return nil
0 commit comments