1717import sys
1818import os
1919
20-
2120def run_command (cmd ):
2221 print ("Running: {}" .format (cmd ))
2322 p = subprocess .Popen (cmd , shell = True )
@@ -49,19 +48,27 @@ def main():
4948 suite_status = True
5049 dockerfiles = get_dockerfiles ()
5150 for dockerfile in dockerfiles :
51+ docker_dir = os .path .dirname (os .path .realpath (__file__ ))
5252 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 )
5456 status = run_command (cmd )
5557 results [dockerfile ] = status
5658 if status != 0 :
5759 suite_status = False
5860 results [dockerfile ] = "FAILED"
5961 else :
6062 results [dockerfile ] = "PASSED"
61- print ("--- [{}] - {} ---" .format (results [dockerfile ], dockerfile ))
6263
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 ))
6371
64- print_results (results )
6572 if suite_status == False :
6673 sys .exit (1 )
6774
@@ -70,4 +77,4 @@ def main():
7077 try :
7178 sys .exit (main ())
7279 except KeyboardInterrupt :
73- sys .exit (1 )
80+ sys .exit (1 )
0 commit comments