vendor: github.com/moby/moby/api, moby/moby/client master
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
This commit is contained in:
@ -84,7 +84,7 @@ func TestVolumeInspectWithoutFormat(t *testing.T) {
|
||||
return client.VolumeInspectResult{}, fmt.Errorf("invalid volumeID, expected %s, got %s", "foo", volumeID)
|
||||
}
|
||||
return client.VolumeInspectResult{
|
||||
Volume: *builders.Volume(),
|
||||
Volume: builders.Volume(),
|
||||
}, nil
|
||||
},
|
||||
},
|
||||
@ -93,7 +93,7 @@ func TestVolumeInspectWithoutFormat(t *testing.T) {
|
||||
args: []string{"foo", "bar"},
|
||||
volumeInspectFunc: func(volumeID string) (client.VolumeInspectResult, error) {
|
||||
return client.VolumeInspectResult{
|
||||
Volume: *builders.Volume(builders.VolumeName(volumeID), builders.VolumeLabels(map[string]string{
|
||||
Volume: builders.Volume(builders.VolumeName(volumeID), builders.VolumeLabels(map[string]string{
|
||||
"foo": "bar",
|
||||
})),
|
||||
}, nil
|
||||
@ -114,7 +114,7 @@ func TestVolumeInspectWithoutFormat(t *testing.T) {
|
||||
func TestVolumeInspectWithFormat(t *testing.T) {
|
||||
volumeInspectFunc := func(volumeID string) (client.VolumeInspectResult, error) {
|
||||
return client.VolumeInspectResult{
|
||||
Volume: *builders.Volume(builders.VolumeLabels(map[string]string{
|
||||
Volume: builders.Volume(builders.VolumeLabels(map[string]string{
|
||||
"foo": "bar",
|
||||
})),
|
||||
}, nil
|
||||
|
||||
@ -71,13 +71,13 @@ func runList(ctx context.Context, dockerCLI command.Cli, options listOptions) er
|
||||
|
||||
// trick for filtering in place
|
||||
n := 0
|
||||
for _, vol := range res.Items.Volumes {
|
||||
for _, vol := range res.Items {
|
||||
if vol.ClusterVolume != nil {
|
||||
res.Items.Volumes[n] = vol
|
||||
res.Items[n] = vol
|
||||
n++
|
||||
}
|
||||
}
|
||||
res.Items.Volumes = res.Items.Volumes[:n]
|
||||
res.Items = res.Items[:n]
|
||||
if !options.quiet {
|
||||
format = clusterTableFormat
|
||||
} else {
|
||||
@ -85,13 +85,13 @@ func runList(ctx context.Context, dockerCLI command.Cli, options listOptions) er
|
||||
}
|
||||
}
|
||||
|
||||
sort.Slice(res.Items.Volumes, func(i, j int) bool {
|
||||
return sortorder.NaturalLess(res.Items.Volumes[i].Name, res.Items.Volumes[j].Name)
|
||||
sort.Slice(res.Items, func(i, j int) bool {
|
||||
return sortorder.NaturalLess(res.Items[i].Name, res.Items[j].Name)
|
||||
})
|
||||
|
||||
volumeCtx := formatter.Context{
|
||||
Output: dockerCLI.Out(),
|
||||
Format: formatter.NewVolumeFormat(format, options.quiet),
|
||||
}
|
||||
return formatter.VolumeWrite(volumeCtx, res.Items.Volumes)
|
||||
return formatter.VolumeWrite(volumeCtx, res.Items)
|
||||
}
|
||||
|
||||
@ -52,14 +52,12 @@ func TestVolumeListWithoutFormat(t *testing.T) {
|
||||
cli := test.NewFakeCli(&fakeClient{
|
||||
volumeListFunc: func(client.VolumeListOptions) (client.VolumeListResult, error) {
|
||||
return client.VolumeListResult{
|
||||
Items: volume.ListResponse{
|
||||
Volumes: []*volume.Volume{
|
||||
builders.Volume(),
|
||||
builders.Volume(builders.VolumeName("foo"), builders.VolumeDriver("bar")),
|
||||
builders.Volume(builders.VolumeName("baz"), builders.VolumeLabels(map[string]string{
|
||||
"foo": "bar",
|
||||
})),
|
||||
},
|
||||
Items: []volume.Volume{
|
||||
builders.Volume(),
|
||||
builders.Volume(builders.VolumeName("foo"), builders.VolumeDriver("bar")),
|
||||
builders.Volume(builders.VolumeName("baz"), builders.VolumeLabels(map[string]string{
|
||||
"foo": "bar",
|
||||
})),
|
||||
},
|
||||
}, nil
|
||||
},
|
||||
@ -73,14 +71,12 @@ func TestVolumeListWithConfigFormat(t *testing.T) {
|
||||
cli := test.NewFakeCli(&fakeClient{
|
||||
volumeListFunc: func(client.VolumeListOptions) (client.VolumeListResult, error) {
|
||||
return client.VolumeListResult{
|
||||
Items: volume.ListResponse{
|
||||
Volumes: []*volume.Volume{
|
||||
builders.Volume(),
|
||||
builders.Volume(builders.VolumeName("foo"), builders.VolumeDriver("bar")),
|
||||
builders.Volume(builders.VolumeName("baz"), builders.VolumeLabels(map[string]string{
|
||||
"foo": "bar",
|
||||
})),
|
||||
},
|
||||
Items: []volume.Volume{
|
||||
builders.Volume(),
|
||||
builders.Volume(builders.VolumeName("foo"), builders.VolumeDriver("bar")),
|
||||
builders.Volume(builders.VolumeName("baz"), builders.VolumeLabels(map[string]string{
|
||||
"foo": "bar",
|
||||
})),
|
||||
},
|
||||
}, nil
|
||||
},
|
||||
@ -97,14 +93,12 @@ func TestVolumeListWithFormat(t *testing.T) {
|
||||
cli := test.NewFakeCli(&fakeClient{
|
||||
volumeListFunc: func(client.VolumeListOptions) (client.VolumeListResult, error) {
|
||||
return client.VolumeListResult{
|
||||
Items: volume.ListResponse{
|
||||
Volumes: []*volume.Volume{
|
||||
builders.Volume(),
|
||||
builders.Volume(builders.VolumeName("foo"), builders.VolumeDriver("bar")),
|
||||
builders.Volume(builders.VolumeName("baz"), builders.VolumeLabels(map[string]string{
|
||||
"foo": "bar",
|
||||
})),
|
||||
},
|
||||
Items: []volume.Volume{
|
||||
builders.Volume(),
|
||||
builders.Volume(builders.VolumeName("foo"), builders.VolumeDriver("bar")),
|
||||
builders.Volume(builders.VolumeName("baz"), builders.VolumeLabels(map[string]string{
|
||||
"foo": "bar",
|
||||
})),
|
||||
},
|
||||
}, nil
|
||||
},
|
||||
@ -119,12 +113,10 @@ func TestVolumeListSortOrder(t *testing.T) {
|
||||
cli := test.NewFakeCli(&fakeClient{
|
||||
volumeListFunc: func(client.VolumeListOptions) (client.VolumeListResult, error) {
|
||||
return client.VolumeListResult{
|
||||
Items: volume.ListResponse{
|
||||
Volumes: []*volume.Volume{
|
||||
builders.Volume(builders.VolumeName("volume-2-foo")),
|
||||
builders.Volume(builders.VolumeName("volume-10-foo")),
|
||||
builders.Volume(builders.VolumeName("volume-1-foo")),
|
||||
},
|
||||
Items: []volume.Volume{
|
||||
builders.Volume(builders.VolumeName("volume-2-foo")),
|
||||
builders.Volume(builders.VolumeName("volume-10-foo")),
|
||||
builders.Volume(builders.VolumeName("volume-1-foo")),
|
||||
},
|
||||
}, nil
|
||||
},
|
||||
@ -139,101 +131,99 @@ func TestClusterVolumeList(t *testing.T) {
|
||||
cli := test.NewFakeCli(&fakeClient{
|
||||
volumeListFunc: func(client.VolumeListOptions) (client.VolumeListResult, error) {
|
||||
return client.VolumeListResult{
|
||||
Items: volume.ListResponse{
|
||||
Volumes: []*volume.Volume{
|
||||
{
|
||||
Name: "volume1",
|
||||
Scope: "global",
|
||||
Driver: "driver1",
|
||||
ClusterVolume: &volume.ClusterVolume{
|
||||
Spec: volume.ClusterVolumeSpec{
|
||||
Group: "group1",
|
||||
AccessMode: &volume.AccessMode{
|
||||
Scope: volume.ScopeSingleNode,
|
||||
Sharing: volume.SharingOneWriter,
|
||||
MountVolume: &volume.TypeMount{},
|
||||
},
|
||||
Availability: volume.AvailabilityActive,
|
||||
Items: []volume.Volume{
|
||||
{
|
||||
Name: "volume1",
|
||||
Scope: "global",
|
||||
Driver: "driver1",
|
||||
ClusterVolume: &volume.ClusterVolume{
|
||||
Spec: volume.ClusterVolumeSpec{
|
||||
Group: "group1",
|
||||
AccessMode: &volume.AccessMode{
|
||||
Scope: volume.ScopeSingleNode,
|
||||
Sharing: volume.SharingOneWriter,
|
||||
MountVolume: &volume.TypeMount{},
|
||||
},
|
||||
Availability: volume.AvailabilityActive,
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "volume2",
|
||||
Scope: "global",
|
||||
Driver: "driver1",
|
||||
ClusterVolume: &volume.ClusterVolume{
|
||||
Spec: volume.ClusterVolumeSpec{
|
||||
Group: "group1",
|
||||
AccessMode: &volume.AccessMode{
|
||||
Scope: volume.ScopeSingleNode,
|
||||
Sharing: volume.SharingOneWriter,
|
||||
MountVolume: &volume.TypeMount{},
|
||||
},
|
||||
Availability: volume.AvailabilityPause,
|
||||
},
|
||||
Info: &volume.Info{
|
||||
CapacityBytes: 100000000,
|
||||
VolumeID: "driver1vol2",
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "volume3",
|
||||
Scope: "global",
|
||||
Driver: "driver2",
|
||||
ClusterVolume: &volume.ClusterVolume{
|
||||
Spec: volume.ClusterVolumeSpec{
|
||||
Group: "group2",
|
||||
AccessMode: &volume.AccessMode{
|
||||
Scope: volume.ScopeMultiNode,
|
||||
Sharing: volume.SharingAll,
|
||||
MountVolume: &volume.TypeMount{},
|
||||
},
|
||||
Availability: volume.AvailabilityActive,
|
||||
},
|
||||
PublishStatus: []*volume.PublishStatus{
|
||||
{
|
||||
NodeID: "nodeid1",
|
||||
State: volume.StatePublished,
|
||||
},
|
||||
},
|
||||
Info: &volume.Info{
|
||||
CapacityBytes: 100000000,
|
||||
VolumeID: "driver1vol3",
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "volume4",
|
||||
Scope: "global",
|
||||
Driver: "driver2",
|
||||
ClusterVolume: &volume.ClusterVolume{
|
||||
Spec: volume.ClusterVolumeSpec{
|
||||
Group: "group2",
|
||||
AccessMode: &volume.AccessMode{
|
||||
Scope: volume.ScopeMultiNode,
|
||||
Sharing: volume.SharingAll,
|
||||
MountVolume: &volume.TypeMount{},
|
||||
},
|
||||
Availability: volume.AvailabilityActive,
|
||||
},
|
||||
PublishStatus: []*volume.PublishStatus{
|
||||
{
|
||||
NodeID: "nodeid1",
|
||||
State: volume.StatePublished,
|
||||
}, {
|
||||
NodeID: "nodeid2",
|
||||
State: volume.StatePublished,
|
||||
},
|
||||
},
|
||||
Info: &volume.Info{
|
||||
CapacityBytes: 100000000,
|
||||
VolumeID: "driver1vol4",
|
||||
},
|
||||
},
|
||||
},
|
||||
builders.Volume(builders.VolumeName("volume-local-1")),
|
||||
},
|
||||
{
|
||||
Name: "volume2",
|
||||
Scope: "global",
|
||||
Driver: "driver1",
|
||||
ClusterVolume: &volume.ClusterVolume{
|
||||
Spec: volume.ClusterVolumeSpec{
|
||||
Group: "group1",
|
||||
AccessMode: &volume.AccessMode{
|
||||
Scope: volume.ScopeSingleNode,
|
||||
Sharing: volume.SharingOneWriter,
|
||||
MountVolume: &volume.TypeMount{},
|
||||
},
|
||||
Availability: volume.AvailabilityPause,
|
||||
},
|
||||
Info: &volume.Info{
|
||||
CapacityBytes: 100000000,
|
||||
VolumeID: "driver1vol2",
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "volume3",
|
||||
Scope: "global",
|
||||
Driver: "driver2",
|
||||
ClusterVolume: &volume.ClusterVolume{
|
||||
Spec: volume.ClusterVolumeSpec{
|
||||
Group: "group2",
|
||||
AccessMode: &volume.AccessMode{
|
||||
Scope: volume.ScopeMultiNode,
|
||||
Sharing: volume.SharingAll,
|
||||
MountVolume: &volume.TypeMount{},
|
||||
},
|
||||
Availability: volume.AvailabilityActive,
|
||||
},
|
||||
PublishStatus: []*volume.PublishStatus{
|
||||
{
|
||||
NodeID: "nodeid1",
|
||||
State: volume.StatePublished,
|
||||
},
|
||||
},
|
||||
Info: &volume.Info{
|
||||
CapacityBytes: 100000000,
|
||||
VolumeID: "driver1vol3",
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "volume4",
|
||||
Scope: "global",
|
||||
Driver: "driver2",
|
||||
ClusterVolume: &volume.ClusterVolume{
|
||||
Spec: volume.ClusterVolumeSpec{
|
||||
Group: "group2",
|
||||
AccessMode: &volume.AccessMode{
|
||||
Scope: volume.ScopeMultiNode,
|
||||
Sharing: volume.SharingAll,
|
||||
MountVolume: &volume.TypeMount{},
|
||||
},
|
||||
Availability: volume.AvailabilityActive,
|
||||
},
|
||||
PublishStatus: []*volume.PublishStatus{
|
||||
{
|
||||
NodeID: "nodeid1",
|
||||
State: volume.StatePublished,
|
||||
}, {
|
||||
NodeID: "nodeid2",
|
||||
State: volume.StatePublished,
|
||||
},
|
||||
},
|
||||
Info: &volume.Info{
|
||||
CapacityBytes: 100000000,
|
||||
VolumeID: "driver1vol4",
|
||||
},
|
||||
},
|
||||
},
|
||||
builders.Volume(builders.VolumeName("volume-local-1")),
|
||||
},
|
||||
}, nil
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user