17
17
import sys
18
18
import os
19
19
20
-
21
20
def run_command (cmd ):
22
21
print ("Running: {}" .format (cmd ))
23
22
p = subprocess .Popen (cmd , shell = True )
@@ -49,19 +48,27 @@ def main():
49
48
suite_status = True
50
49
dockerfiles = get_dockerfiles ()
51
50
for dockerfile in dockerfiles :
51
+ docker_dir = os .path .dirname (os .path .realpath (__file__ ))
52
52
print ("Testing {}" .format (dockerfile ))
53
- cmd = "docker build {}" .format (dockerfile )
53
+ log_file = dockerfile .replace (docker_dir ,"" ).replace ("/" , "_" )
54
+ log_file = "{}.log" .format (log_file )
55
+ cmd = "docker build --no-cache {} &> {}" .format (dockerfile , log_file )
54
56
status = run_command (cmd )
55
57
results [dockerfile ] = status
56
58
if status != 0 :
57
59
suite_status = False
58
60
results [dockerfile ] = "FAILED"
59
61
else :
60
62
results [dockerfile ] = "PASSED"
61
- print ("--- [{}] - {} ---" .format (results [dockerfile ], dockerfile ))
62
63
64
+ cmd = "mv {log} {results}{log}" .format (log = log_file , results = results [dockerfile ])
65
+ run_command (cmd )
66
+ print ("[{}] - {}" .format (results [dockerfile ], dockerfile ))
67
+
68
+ for dockerfile in dockerfiles :
69
+ if results [dockerfile ] == "FAILED" :
70
+ print ("[{}] - {}" .format (results [dockerfile ], dockerfile ))
63
71
64
- print_results (results )
65
72
if suite_status == False :
66
73
sys .exit (1 )
67
74
@@ -70,4 +77,4 @@ def main():
70
77
try :
71
78
sys .exit (main ())
72
79
except KeyboardInterrupt :
73
- sys .exit (1 )
80
+ sys .exit (1 )
0 commit comments