From e68d377f30ed3b87fa61e47590cbd28bf5c36ff4 Mon Sep 17 00:00:00 2001 From: David Sauer Date: Thu, 4 Feb 2021 18:26:00 +0100 Subject: [PATCH] remove double execution to work around flaky endpoints --- pkg/build.go | 17 +++++------------ pkg/inspect.go | 5 ++--- pkg/pull.go | 2 +- pkg/push.go | 2 +- pkg/tag.go | 2 +- 5 files changed, 10 insertions(+), 18 deletions(-) diff --git a/pkg/build.go b/pkg/build.go index 773a1920..57069f78 100644 --- a/pkg/build.go +++ b/pkg/build.go @@ -168,7 +168,7 @@ func buildParameters(r *http.Request) (*buildConfig, error) { // memory limit memoryArg := r.URL.Query().Get("memory") if memoryArg == "" || memoryArg == "0" { - memoryArg = "2147483648" // 2Gi default + memoryArg = buildMemory } memory, err := strconv.Atoi(memoryArg) if err != nil { @@ -368,17 +368,10 @@ buildctl-daemonless.sh \ Spec: corev1.PodSpec{ Containers: []corev1.Container{ { - Image: buildkitImage, - Name: "buildkit", - Command: []string{ - "timeout", - strconv.Itoa(int(MaxExecutionTime / time.Second)), - }, - Args: []string{ - "sh", - "-c", - fmt.Sprintf("(%s) || (%s)", buildScript, buildScript), - }, + Image: buildkitImage, + Name: "buildkit", + Command: []string{"timeout", strconv.Itoa(int(MaxExecutionTime / time.Second))}, + Args: []string{"sh", "-c", buildScript}, VolumeMounts: []corev1.VolumeMount{ { MountPath: "/home/user/.docker", diff --git a/pkg/inspect.go b/pkg/inspect.go index 2b6e5cf2..9014dbc0 100644 --- a/pkg/inspect.go +++ b/pkg/inspect.go @@ -20,11 +20,10 @@ func (s Service) inspect(w http.ResponseWriter, r *http.Request) { script := fmt.Sprintf(` set -euo pipefail mkdir %s -skopeo copy --quiet --retry-times 3 --src-tls-verify=false docker://%s dir://%s || \ - skopeo copy --quiet --retry-times 3 --src-tls-verify=false docker://%s dir://%s +skopeo copy --quiet --retry-times 3 --src-tls-verify=false docker://%s dir://%s skopeo inspect dir://%s rm -r %s -`, randomID, image, randomID, image, randomID, randomID, randomID) +`, randomID, image, randomID, randomID, randomID) ctx, cancel := context.WithTimeout(r.Context(), 5*time.Second) defer cancel() diff --git a/pkg/pull.go b/pkg/pull.go index 942cc44f..9af5d7f9 100644 --- a/pkg/pull.go +++ b/pkg/pull.go @@ -76,7 +76,7 @@ func (s Service) pullImage(w http.ResponseWriter, r *http.Request) { } o := &output{w: w} - err = scheduler(r.Context(), o, "pull", script+" || "+script, dockerCfg.mustToJSON()) + err = scheduler(r.Context(), o, "pull", script, dockerCfg.mustToJSON()) if err != nil { log.Printf("execute pull: %v", err) o.Errorf("execute pull: %v", err) diff --git a/pkg/push.go b/pkg/push.go index 20ce54bd..4143ae47 100644 --- a/pkg/push.go +++ b/pkg/push.go @@ -42,7 +42,7 @@ func (s Service) pushImage(w http.ResponseWriter, r *http.Request) { } o := &output{w: w} - err = scheduler(r.Context(), o, "push", script+" || "+script, dockerCfg.mustToJSON()) + err = scheduler(r.Context(), o, "push", script, dockerCfg.mustToJSON()) if err != nil { log.Printf("execute push: %v", err) o.Errorf("execute push: %v", err) diff --git a/pkg/tag.go b/pkg/tag.go index 367a43ff..14c1e6ac 100644 --- a/pkg/tag.go +++ b/pkg/tag.go @@ -50,7 +50,7 @@ func (s Service) tagImage(w http.ResponseWriter, r *http.Request) { } o := &bytes.Buffer{} - err = scheduler(r.Context(), o, "tag", script+" || "+script, "") + err = scheduler(r.Context(), o, "tag", script, "") if err != nil { log.Printf("execute tag: %v", err) w.WriteHeader(http.StatusInternalServerError)