(builderId string, appId string)
| 28 | } |
| 29 | |
| 30 | func triggerBuildAndWait(builderId string, appId string) map[string]any { |
| 31 | bc := buildercontroller.GetOrCreateController(builderId) |
| 32 | rtInfo := wstore.GetRTInfo(waveobj.MakeORef(waveobj.OType_Builder, builderId)) |
| 33 | |
| 34 | var builderEnv map[string]string |
| 35 | if rtInfo != nil { |
| 36 | builderEnv = rtInfo.BuilderEnv |
| 37 | } |
| 38 | |
| 39 | ctx, cancel := context.WithTimeout(context.Background(), 60*time.Second) |
| 40 | defer cancel() |
| 41 | |
| 42 | result, err := bc.RestartAndWaitForBuild(ctx, appId, builderEnv) |
| 43 | if err != nil { |
| 44 | log.Printf("Build failed for %s: %v", builderId, err) |
| 45 | return map[string]any{ |
| 46 | "build_success": false, |
| 47 | "build_error": err.Error(), |
| 48 | "build_output": "", |
| 49 | } |
| 50 | } |
| 51 | |
| 52 | return map[string]any{ |
| 53 | "build_success": result.Success, |
| 54 | "build_error": result.ErrorMessage, |
| 55 | "build_output": result.BuildOutput, |
| 56 | } |
| 57 | } |
| 58 | |
| 59 | func parseBuilderWriteAppFileInput(input any) (*builderWriteAppFileParams, error) { |
| 60 | result := &builderWriteAppFileParams{} |
no test coverage detected