44import logging
55from utils import run_command
66
7- def build_sqlancer_image (script_log , docker_log , embedded , dbms , force_rebuild = False ):
7+ def build_sqlancer_image (script_log , docker_log , embedded , dbms = 'mysql' , force_rebuild = False ):
88 context_dir = "./sqlancer"
99 if embedded == "yes" :
1010 dockerfile_path = f"./{ dbms } /Dockerfile"
@@ -23,7 +23,7 @@ def build_sqlancer_image(script_log, docker_log, embedded, dbms, force_rebuild=F
2323
2424 if force_rebuild :
2525 script_log .info ("Rebuilding SQLancer image: sqlancer:latest ..." )
26- run_command (
26+ run_command (
2727 ["docker" , "build" , "--no-cache" , "-f" , dockerfile_path , "-t" , "sqlancer:latest" , context_dir ],
2828 docker_log
2929 )
@@ -68,27 +68,28 @@ def build_network(script_log, docker_log, network_name="sqlancer-net"):
6868 sys .exit (1 )
6969
7070def build_db_image (cfg , use_cache , script_log , docker_log , custom = False , dockerfile_path = "" ):
71- image = f"{ cfg ['image_name' ]} :{ cfg ['tag' ]} "
71+ if cfg ["embedded" ] == "no" :
72+ image = f"{ cfg ['image_name' ]} :{ cfg ['tag' ]} "
7273
73- if not use_cache and not custom :
74- script_log .info ("Pulling db image: %s ..." , image )
75- run_command (["docker" , "pull" , image ], docker_log )
76- script_log .info ("DB image pulled: %s" , image )
77- elif custom :
78- build_cmd = ["docker" , "build" , "-t" , image , os .path .dirname (dockerfile_path )]
79- if not use_cache :
80- build_cmd .insert (2 , "--no-cache" )
81- script_log .info ("Building db image: %s ..." , image )
82- run_command (build_cmd , docker_log )
83- script_log .info ("DB image built: %s ..." , image )
84- else :
85- script_log .info ("DB image already exists: %s" , image )
74+ if not use_cache and not custom :
75+ script_log .info ("Pulling db image: %s ..." , image )
76+ run_command (["docker" , "pull" , image ], docker_log )
77+ script_log .info ("DB image pulled: %s" , image )
78+ elif custom :
79+ build_cmd = ["docker" , "build" , "-t" , image , os .path .dirname (dockerfile_path )]
80+ if not use_cache :
81+ build_cmd .insert (2 , "--no-cache" )
82+ script_log .info ("Building db image: %s ..." , image )
83+ run_command (build_cmd , docker_log )
84+ script_log .info ("DB image built: %s ..." , image )
85+ else :
86+ script_log .info ("DB image already exists: %s" , image )
8687
8788
88- def build_environment (cfg , use_cache , script_log , docker_log , custom = False , dockerfile_path = "" ):
89+ def build_environment (cfg , use_cache , script_log , docker_log , dbms = 'mysql' , custom = False , dockerfile_path = "" ):
8990 script_log .info ("==============================Building environment==============================" )
9091 build_network (script_log , docker_log )
91- build_sqlancer_image (script_log , docker_log , cfg ["embedded" ], cfg [ " dbms" ] , force_rebuild = False )
92+ build_sqlancer_image (script_log , docker_log , cfg ["embedded" ], dbms , force_rebuild = False )
9293 if cfg ["embedded" ] == "no" :
9394 build_db_image (cfg , use_cache , script_log , docker_log , custom , dockerfile_path )
9495 script_log .info ("==============================Building environment==============================" )
0 commit comments