vendor: github.com/docker/cli v29.6.1

full diff: https://github.com/docker/cli/compare/v29.5.3...v29.6.1

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
This commit is contained in:
Sebastiaan van Stijn
2026-07-01 14:43:19 +02:00
parent 5f67f9bcee
commit d27d845f75
9 changed files with 155 additions and 14 deletions
+15 -1
View File
@@ -43,6 +43,7 @@ Alexander Larsson <alexl@redhat.com>
Alexander Morozov <lk4d4math@gmail.com>
Alexander Ryabov <i@sepa.spb.ru>
Alexandre González <agonzalezro@gmail.com>
Alexandre Levavasseur <alexandre+oss@13x.fr>
Alexandre Vallières-Lagacé <alexandre.valliereslagace@docker.com>
Alexey Igrychev <alexey.igrychev@flant.com>
Alexis Couvreur <alexiscouvreur.pro@gmail.com>
@@ -161,6 +162,7 @@ Chen Chuanliang <chen.chuanliang@zte.com.cn>
Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Chen Mingjie <chenmingjie0828@163.com>
Chen Qiu <cheney-90@hotmail.com>
Ching Wei Kang <164879897+WilliamK112@users.noreply.github.com>
Chris Chinchilla <chris@chrischinchilla.com>
Chris Couzens <ccouzens@gmail.com>
Chris Gavin <chris@chrisgavin.me>
@@ -366,7 +368,7 @@ Hugo Gabriel Eyherabide <hugogabriel.eyherabide@gmail.com>
huqun <huqun@zju.edu.cn>
Huu Nguyen <huu@prismskylabs.com>
Hyzhou Zhy <hyzhou.zhy@alibaba-inc.com>
Iain MacDonald <ijmacd@gmail.com>
Iain MacDonald <IJMacD@gmail.com>
Iain Samuel McLean Elder <iain@isme.es>
Ian Campbell <ian.campbell@docker.com>
Ian Philpot <ian.philpot@microsoft.com>
@@ -552,6 +554,7 @@ Ludovic Temgoua Abanda <abandaludovic500@gmail.com>
Luis Henrique Mulinari <luis.mulinari@gmail.com>
Luka Hartwig <mail@lukahartwig.de>
Lukas Heeren <lukas-heeren@hotmail.com>
Lukas Michael <lukas.23022005@gmail.com>
Lukasz Zajaczkowski <Lukasz.Zajaczkowski@ts.fujitsu.com>
Luo Jiyin <luojiyin@hotmail.com>
Lydell Manganti <LydellManganti@users.noreply.github.com>
@@ -562,6 +565,7 @@ Maciej Kalisz <maciej.d.kalisz@gmail.com>
Madhav Puri <madhav.puri@gmail.com>
Madhu Venugopal <madhu@socketplane.io>
Madhur Batra <madhurbatra097@gmail.com>
Mahesh Thakur <maheshthakur9152@gmail.com>
Malte Janduda <mail@janduda.net>
Manjunath A Kumatagi <mkumatag@in.ibm.com>
Mansi Nahar <mmn4185@rit.edu>
@@ -589,10 +593,12 @@ Mathieu Rollet <matletix@gmail.com>
Matt Gucci <matt9ucci@gmail.com>
Matt Robenolt <matt@ydekproductions.com>
Matteo Orefice <matteo.orefice@bites4bits.software>
Matteo Panzeri <matteo1782@gmail.com>
Matthew Heon <mheon@redhat.com>
Matthieu Hauglustaine <matt.hauglustaine@gmail.com>
Matthieu MOREL <matthieu.morel35@gmail.com>
Mauro Porras P <mauroporrasp@gmail.com>
Max Morozov <gtmax.yo@gmail.com>
Max Shytikov <mshytikov@gmail.com>
Max-Julian Pogner <max-julian@pogner.at>
Maxime Petazzoni <max@signalfuse.com>
@@ -617,6 +623,7 @@ Michael West <mwest@mdsol.com>
Michael Zampani <michael.zampani@docker.com>
Michal Minář <miminar@redhat.com>
Michał Czeraszkiewicz <czerasz@gmail.com>
Mickael Emirkanian <mickael.emirkanian@docker.com>
Miguel Angel Alvarez Cabrerizo <doncicuto@gmail.com>
Mihai Borobocea <MihaiBorob@gmail.com>
Mihuleacc Sergiu <mihuleac.sergiu@gmail.com>
@@ -638,6 +645,7 @@ Mohammad Banikazemi <mb@us.ibm.com>
Mohammad Hossein <mhm98035@gmail.com>
Mohammed Aaqib Ansari <maaquib@gmail.com>
Mohammed Aminu Futa <mohammedfuta2000@gmail.com>
Mohammed Thaha <mohammedthahacse@gmail.com>
Mohini Anne Dsouza <mohini3917@gmail.com>
Moorthy RS <rsmoorthy@gmail.com>
Morgan Bauer <mbauer@us.ibm.com>
@@ -689,6 +697,7 @@ Olli Janatuinen <olli.janatuinen@gmail.com>
Oscar Wieman <oscrx@icloud.com>
Otto Kekäläinen <otto@seravo.fi>
Ovidio Mallo <ovidio.mallo@gmail.com>
Park Jaeon <me@finalchild.dev>
Pascal Borreli <pascal@borreli.com>
Patrick Böänziger <patrick.baenziger@bsi-software.com>
Patrick Daigle <114765035+pdaig@users.noreply.github.com>
@@ -715,6 +724,7 @@ Peter Jaffe <pjaffe@nevo.com>
Peter Kehl <peter.kehl@gmail.com>
Peter Nagy <xificurC@gmail.com>
Peter Salvatore <peter@psftw.com>
Peter Valdemar Mørch <peter@morch.com>
Peter Waller <p@pwaller.net>
Phil Estes <estesp@gmail.com>
Philip Alexander Etling <paetling@gmail.com>
@@ -739,6 +749,7 @@ Ray Tsang <rayt@google.com>
Reficul <xuzhenglun@gmail.com>
Remy Suen <remy.suen@gmail.com>
Renaud Gaubert <rgaubert@nvidia.com>
René Hermenau <rene-hermenau@users.noreply.github.com>
Ricardo N Feliciano <FelicianoTech@gmail.com>
Rich Moyse <rich@moyse.us>
Richard Chen Zheng <58443436+rchenzheng@users.noreply.github.com>
@@ -789,6 +800,7 @@ Scott Collier <emailscottcollier@gmail.com>
Sean Christopherson <sean.j.christopherson@intel.com>
Sean Rodman <srodman7689@gmail.com>
Sebastiaan van Stijn <github@gone.nl>
Seiya Miyata <odradek38@gmail.com>
Sergey Tryuber <Sergeant007@users.noreply.github.com>
Serhat Gülçiçek <serhat25@gmail.com>
Sevki Hasirci <s@sevki.org>
@@ -889,8 +901,10 @@ Umesh Yadav <umesh4257@gmail.com>
Vaclav Struhar <struharv@gmail.com>
Valentin Lorentz <progval+git@progval.net>
Vardan Pogosian <vardan.pogosyan@gmail.com>
Varun Hotani <varunhotani@gmail.com>
Venkateswara Reddy Bukkasamudram <bukkasamudram@outlook.com>
Veres Lajos <vlajos@gmail.com>
Vibhu Anan <vibhuanand@outlook.com>
Victor Vieux <victor.vieux@docker.com>
Victoria Bialas <victoria.bialas@docker.com>
Viktor Stanchev <me@viktorstanchev.com>
+19
View File
@@ -0,0 +1,19 @@
package image
import (
"encoding/json"
ocispec "github.com/opencontainers/image-spec/specs-go/v1"
)
// AttestationStatement is a single in-toto statement attached to an image.
type AttestationStatement struct {
// Descriptor is the OCI descriptor of the statement blob (media type,
// digest, size, annotations).
Descriptor ocispec.Descriptor `json:"Descriptor"`
// PredicateType is the in-toto predicate type URI of this statement.
PredicateType string `json:"PredicateType"`
// Statement is the verbatim in-toto statement JSON. Omitted unless the
// caller opts in via the statement=true query parameter.
Statement *json.RawMessage `json:"Statement,omitempty"`
}
+1 -1
View File
@@ -109,7 +109,7 @@ const DummyHost = "api.moby.localhost"
// overriding the version and disable API-version negotiation.
//
// This version may be lower than the version of the api library module used.
const MaxAPIVersion = "1.54"
const MaxAPIVersion = "1.55"
// MinAPIVersion is the minimum API version supported by the client. API versions
// below this version are not considered when performing API-version negotiation.
+1
View File
@@ -133,6 +133,7 @@ type ImageAPIClient interface {
ImageInspect(ctx context.Context, image string, _ ...ImageInspectOption) (ImageInspectResult, error)
ImageHistory(ctx context.Context, image string, _ ...ImageHistoryOption) (ImageHistoryResult, error)
ImageAttestations(ctx context.Context, image string, _ ...ImageAttestationsOption) (ImageAttestationsResult, error)
ImageLoad(ctx context.Context, input io.Reader, _ ...ImageLoadOption) (ImageLoadResult, error)
ImageSave(ctx context.Context, images []string, _ ...ImageSaveOption) (ImageSaveResult, error)
+51
View File
@@ -0,0 +1,51 @@
package client
import (
"context"
"encoding/json"
"net/url"
)
// ImageAttestations returns the in-toto attestation statements attached to an
// image for the given platform. This requires API version 1.55 or higher.
func (cli *Client) ImageAttestations(ctx context.Context, imageID string, opts ...ImageAttestationsOption) (ImageAttestationsResult, error) {
if imageID == "" {
return ImageAttestationsResult{}, objectNotFoundError{object: "image", id: imageID}
}
if err := cli.requiresVersion(ctx, "1.55", "attestations"); err != nil {
return ImageAttestationsResult{}, err
}
var o imageAttestationsOpts
for _, opt := range opts {
if err := opt.Apply(&o); err != nil {
return ImageAttestationsResult{}, err
}
}
query := url.Values{}
if o.platform != nil {
p, err := encodePlatform(o.platform)
if err != nil {
return ImageAttestationsResult{}, err
}
query.Set("platform", p)
}
for _, pt := range o.predicateTypes {
query.Add("type", pt)
}
if o.includeStatement {
query.Set("statement", "1")
}
resp, err := cli.get(ctx, "/images/"+imageID+"/attestations", query, nil)
defer ensureReaderClosed(resp)
if err != nil {
return ImageAttestationsResult{}, err
}
var result ImageAttestationsResult
err = json.NewDecoder(resp.Body).Decode(&result.Items)
return result, err
}
+56
View File
@@ -0,0 +1,56 @@
package client
import (
"github.com/moby/moby/api/types/image"
ocispec "github.com/opencontainers/image-spec/specs-go/v1"
)
// ImageAttestationsResult is the result of an ImageAttestations operation.
type ImageAttestationsResult struct {
Items []image.AttestationStatement
}
// ImageAttestationsOption is a functional option for the ImageAttestations operation.
type ImageAttestationsOption interface {
Apply(*imageAttestationsOpts) error
}
type imageAttestationsOptionFunc func(*imageAttestationsOpts) error
func (f imageAttestationsOptionFunc) Apply(o *imageAttestationsOpts) error { return f(o) }
type imageAttestationsOpts struct {
platform *ocispec.Platform
predicateTypes []string
includeStatement bool
}
// ImageAttestationsWithPlatform filters attestations to those for the given
// platform variant. If omitted, the daemon's default platform is used.
func ImageAttestationsWithPlatform(platform ocispec.Platform) ImageAttestationsOption {
return imageAttestationsOptionFunc(func(o *imageAttestationsOpts) error {
o.platform = &platform
return nil
})
}
// ImageAttestationsWithPredicateTypes filters returned statements to those
// whose in-toto predicate type matches one of the given URIs.
// If not set, all statements are returned.
func ImageAttestationsWithPredicateTypes(types ...string) ImageAttestationsOption {
return imageAttestationsOptionFunc(func(o *imageAttestationsOpts) error {
o.predicateTypes = append(o.predicateTypes, types...)
return nil
})
}
// ImageAttestationsWithStatement asks the daemon to include the verbatim
// in-toto statement body in each returned entry. Without this option, only
// the descriptor and predicate type are returned and statement blobs are
// not read.
func ImageAttestationsWithStatement() ImageAttestationsOption {
return imageAttestationsOptionFunc(func(o *imageAttestationsOpts) error {
o.includeStatement = true
return nil
})
}
+3 -3
View File
@@ -302,7 +302,7 @@ github.com/digitorus/timestamp
# github.com/distribution/reference v0.6.0
## explicit; go 1.20
github.com/distribution/reference
# github.com/docker/cli v29.5.3+incompatible
# github.com/docker/cli v29.6.1+incompatible
## explicit
github.com/docker/cli/cli
github.com/docker/cli/cli-plugins/metadata
@@ -764,7 +764,7 @@ github.com/moby/go-archive/tarheader
# github.com/moby/locker v1.0.1
## explicit; go 1.13
github.com/moby/locker
# github.com/moby/moby/api v1.54.2
# github.com/moby/moby/api v1.55.0
## explicit; go 1.24
github.com/moby/moby/api/pkg/authconfig
github.com/moby/moby/api/pkg/stdcopy
@@ -785,7 +785,7 @@ github.com/moby/moby/api/types/storage
github.com/moby/moby/api/types/swarm
github.com/moby/moby/api/types/system
github.com/moby/moby/api/types/volume
# github.com/moby/moby/client v0.4.1
# github.com/moby/moby/client v0.5.0
## explicit; go 1.24
github.com/moby/moby/client
github.com/moby/moby/client/internal