@@ -127,7 +127,9 @@ func runRebuild(ctx context.Context, supervisorClient *supervisor.SupervisorClie
127127 return err
128128 }
129129
130- err = os .WriteFile (filepath .Join (tmpDir , "Dockerfile" ), []byte (baseimage ), 0644 )
130+ tmpDockerfile := filepath .Join (tmpDir , "Dockerfile" )
131+
132+ err = os .WriteFile (tmpDockerfile , []byte (baseimage ), 0644 )
131133 if err != nil {
132134 fmt .Println ("Could not write the temporary Dockerfile" )
133135 event .Set ("ErrorCode" , utils .RebuildErrorCode_DockerfileCannotWirte )
@@ -143,7 +145,7 @@ func runRebuild(ctx context.Context, supervisorClient *supervisor.SupervisorClie
143145
144146 tag := "gp-rebuild-temp-build"
145147
146- dockerCmd := exec .Command (dockerPath , "build" , "-t" , tag , "--progress=tty" , "." )
148+ dockerCmd := exec .Command (dockerPath , "build" , "-f" , tmpDockerfile , "- t" , tag , "--progress=tty" , wsInfo . CheckoutLocation )
147149 dockerCmd .Dir = tmpDir
148150 dockerCmd .Stdout = os .Stdout
149151 dockerCmd .Stderr = os .Stderr
@@ -183,26 +185,24 @@ func runRebuild(ctx context.Context, supervisorClient *supervisor.SupervisorClie
183185 "--label" , "gp-rebuild=true" ,
184186 "-it" ,
185187 tag ,
186- "bash " ,
188+ "sh " ,
187189 "-c" ,
188- fmt .Sprintf ("echo '%s'; bash " , welcomeMessage ),
190+ fmt .Sprintf ("echo '%s'; sh " , welcomeMessage ),
189191 )
190192
191193 dockerRunCmd .Stdout = os .Stdout
192194 dockerRunCmd .Stderr = os .Stderr
193195 dockerRunCmd .Stdin = os .Stdin
194196
195- err = dockerRunCmd .Run ()
196- if _ , ok := err .(* exec.ExitError ); ok {
197- fmt .Println ("Docker Run Command Failed" )
198- event .Set ("ErrorCode" , utils .RebuildErrorCode_DockerRunFailed )
199- return err
200- } else if err != nil {
197+ err = dockerRunCmd .Start ()
198+ if err != nil {
201199 fmt .Println ("Docker error" )
202200 event .Set ("ErrorCode" , utils .RebuildErrorCode_DockerErr )
203201 return err
204202 }
205203
204+ _ = dockerRunCmd .Wait ()
205+
206206 return nil
207207}
208208
0 commit comments