From 7e37c608f7ac04ffbb6e11b5b774acfd7afb6d95 Mon Sep 17 00:00:00 2001 From: Aditya R Date: Mon, 7 Feb 2022 13:38:16 +0530 Subject: compat: endpoint /build must set header content type as application/json in reponse Lot of clients are expecting proper `Content-type: application/json` configured in response headers of `/build` compat api. Following commit fixes that. Fixes issues where code is setting header field after writing header which is wrong. We must set `content-type` before we write and flush http header. Signed-off-by: Aditya R --- test/apiv2/10-images.at | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'test/apiv2') diff --git a/test/apiv2/10-images.at b/test/apiv2/10-images.at index 673858a3c..9526183e3 100644 --- a/test/apiv2/10-images.at +++ b/test/apiv2/10-images.at @@ -190,6 +190,11 @@ t POST "libpod/build?dockerfile=containerfile" $CONTAINERFILE_TAR application/js t POST "build?dockerfile=containerfile" $CONTAINERFILE_TAR application/json 200 \ .stream~"STEP 1/1: FROM $IMAGE" +# Build api response header must contain Content-type: application/json +t POST "build?dockerfile=containerfile" $CONTAINERFILE_TAR application/json 200 +response_headers=$(cat "$WORKDIR/curl.headers.out") +like "$response_headers" ".*application/json.*" "header does not contains application/json" + # PR #12091: output from compat API must now include {"aux":{"ID":"sha..."}} t POST "build?dockerfile=containerfile" $CONTAINERFILE_TAR 200 \ '.aux|select(has("ID")).ID~^sha256:[0-9a-f]\{64\}$' -- cgit v1.2.3-54-g00ecf From 92790e98c6bc818e6941c66d9cd864d60938376f Mon Sep 17 00:00:00 2001 From: Matthew Heon Date: Thu, 10 Feb 2022 14:22:36 -0500 Subject: Bump to v4.0.0-dev Signed-off-by: Matthew Heon --- test/apiv2/01-basic.at | 2 +- version/version.go | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'test/apiv2') diff --git a/test/apiv2/01-basic.at b/test/apiv2/01-basic.at index 2747ccbd4..cfd7fe036 100644 --- a/test/apiv2/01-basic.at +++ b/test/apiv2/01-basic.at @@ -19,7 +19,7 @@ for i in /version version; do t GET $i 200 \ .Components[0].Name="Podman Engine" \ .Components[0].Details.APIVersion~4[0-9.-]\\+ \ - .Components[0].Details.MinAPIVersion=3.1.0 \ + .Components[0].Details.MinAPIVersion=4.0.0-dev \ .Components[0].Details.Os=linux \ .ApiVersion=1.40 \ .MinAPIVersion=1.24 \ diff --git a/version/version.go b/version/version.go index 7d41884b7..222d766e2 100644 --- a/version/version.go +++ b/version/version.go @@ -27,7 +27,7 @@ const ( // NOTE: remember to bump the version at the top // of the top-level README.md file when this is // bumped. -var Version = semver.MustParse("4.0.0-rc5") +var Version = semver.MustParse("4.0.0-dev") // See https://docs.docker.com/engine/api/v1.40/ // libpod compat handlers are expected to honor docker API versions @@ -38,7 +38,7 @@ var Version = semver.MustParse("4.0.0-rc5") var APIVersion = map[Tree]map[Level]semver.Version{ Libpod: { CurrentAPI: Version, - MinimalAPI: semver.MustParse("4.0.0-rc5"), + MinimalAPI: semver.MustParse("4.0.0-dev"), }, Compat: { CurrentAPI: semver.MustParse("1.40.0"), -- cgit v1.2.3-54-g00ecf From 6a3de93513947368bb27d2daf2d85e096bd5fa6b Mon Sep 17 00:00:00 2001 From: Matthew Heon Date: Fri, 11 Feb 2022 13:18:08 -0500 Subject: Revert minimum API change CI is barfing and this seems like the most likely cause. Signed-off-by: Matthew Heon --- test/apiv2/01-basic.at | 2 +- version/version.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'test/apiv2') diff --git a/test/apiv2/01-basic.at b/test/apiv2/01-basic.at index cfd7fe036..06db62785 100644 --- a/test/apiv2/01-basic.at +++ b/test/apiv2/01-basic.at @@ -19,7 +19,7 @@ for i in /version version; do t GET $i 200 \ .Components[0].Name="Podman Engine" \ .Components[0].Details.APIVersion~4[0-9.-]\\+ \ - .Components[0].Details.MinAPIVersion=4.0.0-dev \ + .Components[0].Details.MinAPIVersion=3.3.1 \ .Components[0].Details.Os=linux \ .ApiVersion=1.40 \ .MinAPIVersion=1.24 \ diff --git a/version/version.go b/version/version.go index 222d766e2..da7402967 100644 --- a/version/version.go +++ b/version/version.go @@ -38,7 +38,7 @@ var Version = semver.MustParse("4.0.0-dev") var APIVersion = map[Tree]map[Level]semver.Version{ Libpod: { CurrentAPI: Version, - MinimalAPI: semver.MustParse("4.0.0-dev"), + MinimalAPI: semver.MustParse("3.3.1"), }, Compat: { CurrentAPI: semver.MustParse("1.40.0"), -- cgit v1.2.3-54-g00ecf