compat build: adhere to q/quiet

Fixes: #12566
Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
This commit is contained in:
Valentin Rothberg
2021-12-10 15:32:55 +01:00
parent e993b88c03
commit 81a0a79844
2 changed files with 7 additions and 3 deletions

View File

@ -655,7 +655,7 @@ func BuildImage(w http.ResponseWriter, r *http.Request) {
return
case <-runCtx.Done():
if success {
if !utils.IsLibpodRequest(r) {
if !utils.IsLibpodRequest(r) && !query.Quiet {
m.Stream = fmt.Sprintf("Successfully built %12.12s\n", imageID)
if err := enc.Encode(m); err != nil {
logrus.Warnf("Failed to json encode error %v", err)

View File

@ -196,12 +196,16 @@ fi
curl -XPOST --data-binary @<(cat $CONTAINERFILE_TAR) \
-H "content-type: application/tar" \
--dump-header "${TMPD}/headers.txt" \
-o /dev/null \
"http://$HOST:$PORT/v1.40/libpod/build?dockerfile=containerfile" &> /dev/null
-o "${TMPD}/response.txt" \
"http://$HOST:$PORT/v1.40/build?dockerfile=containerfile&q=true" &> /dev/null
if ! grep -q '200 OK' "${TMPD}/headers.txt"; then
echo -e "${red}NOK: Image build from tar failed response was not 200 OK (application/tar)"
BUILD_TEST_ERROR="1"
fi
if grep -E "\"[0-9a-f]{64}\\\n\"" $(jq .stream "${TMPD}/response.txt"); then
echo -e "${red} quiet-mode should only send image ID"
BUILD_TEST_ERROR="1"
fi
# Yes, this is very un-RESTful re: Content-Type header ignored when compatibility endpoint used
# See https://github.com/containers/podman/issues/11012