diff options
author | Daniel J Walsh <dwalsh@redhat.com> | 2021-04-03 06:36:51 -0400 |
---|---|---|
committer | Ed Santiago <santiago@redhat.com> | 2021-04-07 05:00:16 -0600 |
commit | b68106703e8929c2ba313fd580032ea5bf43ccf2 (patch) | |
tree | 59f6794e8b464b49d745a75b6aaca51e946b250d /pkg/api/handlers | |
parent | 68269a0ee11f4683cdd8e36b85a58a1975aeb8e7 (diff) | |
download | podman-b68106703e8929c2ba313fd580032ea5bf43ccf2.tar.gz podman-b68106703e8929c2ba313fd580032ea5bf43ccf2.tar.bz2 podman-b68106703e8929c2ba313fd580032ea5bf43ccf2.zip |
Handle podman-remote --arch, --platform, --os
Podman remote should be able to handle remote specification of
arches.
Requires: https://github.com/containers/buildah/pull/3116
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
Diffstat (limited to 'pkg/api/handlers')
-rw-r--r-- | pkg/api/handlers/compat/images_build.go | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/pkg/api/handlers/compat/images_build.go b/pkg/api/handlers/compat/images_build.go index ab92434b1..700881926 100644 --- a/pkg/api/handlers/compat/images_build.go +++ b/pkg/api/handlers/compat/images_build.go @@ -15,6 +15,7 @@ import ( "github.com/containers/buildah" buildahDefine "github.com/containers/buildah/define" + "github.com/containers/buildah/pkg/parse" "github.com/containers/buildah/util" "github.com/containers/image/v5/types" "github.com/containers/podman/v3/libpod" @@ -445,6 +446,17 @@ func BuildImage(w http.ResponseWriter, r *http.Request) { }, } + if len(query.Platform) > 0 { + variant := "" + buildOptions.OS, buildOptions.Architecture, variant, err = parse.Platform(query.Platform) + if err != nil { + utils.BadRequest(w, "platform", query.Platform, err) + return + } + buildOptions.SystemContext.OSChoice = buildOptions.OS + buildOptions.SystemContext.ArchitectureChoice = buildOptions.Architecture + buildOptions.SystemContext.VariantChoice = variant + } if _, found := r.URL.Query()["timestamp"]; found { ts := time.Unix(query.Timestamp, 0) buildOptions.Timestamp = &ts |