func()

in helpers/foundation-deployer/gcp/gcp.go [85:102]


func (g GCP) GetFinalBuildState(t testing.TB, projectID, region, buildID string, maxRetry int) (string, error) {
	var status string
	count := 0
	fmt.Printf("waiting for build %s execution.\n", buildID)
	status = g.GetBuildStatus(t, projectID, region, buildID)
	fmt.Printf("build status is %s\n", status)
	for status != StatusSuccess && status != StatusFailure && status != StatusCancelled {
		fmt.Printf("build status is %s\n", status)
		if count >= maxRetry {
			return "", fmt.Errorf("timeout waiting for build '%s' execution", buildID)
		}
		count = count + 1
		time.Sleep(g.sleepTime * time.Second)
		status = g.GetBuildStatus(t, projectID, region, buildID)
	}
	fmt.Printf("final build status is %s\n", status)
	return status, nil
}