mirror of
https://github.com/distribution/distribution
synced 2024-11-06 19:35:52 +01:00
Make S3 tests pass with MinIO (#4107)
This commit is contained in:
commit
708bc6f3e9
@ -210,7 +210,10 @@ func TestStorageClass(t *testing.T) {
|
|||||||
rootDir := t.TempDir()
|
rootDir := t.TempDir()
|
||||||
contents := []byte("contents")
|
contents := []byte("contents")
|
||||||
ctx := context.Background()
|
ctx := context.Background()
|
||||||
for _, storageClass := range s3StorageClasses {
|
|
||||||
|
// We don't need to test all the storage classes, just that its selectable.
|
||||||
|
// The first 3 are common to AWS and MinIO, so use those.
|
||||||
|
for _, storageClass := range s3StorageClasses[:3] {
|
||||||
filename := "/test-" + storageClass
|
filename := "/test-" + storageClass
|
||||||
s3Driver, err := s3DriverConstructor(rootDir, storageClass)
|
s3Driver, err := s3DriverConstructor(rootDir, storageClass)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -307,7 +310,6 @@ func TestDelete(t *testing.T) {
|
|||||||
objs := []string{
|
objs := []string{
|
||||||
"/file1",
|
"/file1",
|
||||||
"/file1-2",
|
"/file1-2",
|
||||||
"/file1/2",
|
|
||||||
"/folder1/file1",
|
"/folder1/file1",
|
||||||
"/folder2/file1",
|
"/folder2/file1",
|
||||||
"/folder3/file1",
|
"/folder3/file1",
|
||||||
@ -319,15 +321,6 @@ func TestDelete(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
tcs := []testCase{
|
tcs := []testCase{
|
||||||
{
|
|
||||||
// special case where a given path is a file and has subpaths
|
|
||||||
name: "delete file1",
|
|
||||||
delete: "/file1",
|
|
||||||
expected: []string{
|
|
||||||
"/file1",
|
|
||||||
"/file1/2",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
name: "delete folder1",
|
name: "delete folder1",
|
||||||
delete: "/folder1",
|
delete: "/folder1",
|
||||||
@ -371,16 +364,8 @@ func TestDelete(t *testing.T) {
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
// objects to skip auto-created test case
|
|
||||||
skipCase := map[string]bool{
|
|
||||||
// special case where deleting "/file1" also deletes "/file1/2" is tested explicitly
|
|
||||||
"/file1": true,
|
|
||||||
}
|
|
||||||
// create a test case for each file
|
// create a test case for each file
|
||||||
for _, p := range objs {
|
for _, p := range objs {
|
||||||
if skipCase[p] {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
tcs = append(tcs, testCase{
|
tcs = append(tcs, testCase{
|
||||||
name: fmt.Sprintf("delete path:'%s'", p),
|
name: fmt.Sprintf("delete path:'%s'", p),
|
||||||
delete: p,
|
delete: p,
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
services:
|
services:
|
||||||
minio:
|
minio:
|
||||||
image: docker.io/minio/minio:RELEASE.2023-09-20T22-49-55Z
|
image: docker.io/minio/minio:RELEASE.2023-10-16T04-13-43Z
|
||||||
command: server /data --console-address ":9001"
|
command: server /data --console-address ":9001"
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
|
test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
|
||||||
@ -17,7 +17,7 @@ services:
|
|||||||
- ./miniodata/distribution:/data:Z
|
- ./miniodata/distribution:/data:Z
|
||||||
|
|
||||||
minio-init:
|
minio-init:
|
||||||
image: docker.io/minio/mc:RELEASE.2023-02-16T19-20-11Z
|
image: docker.io/minio/mc:RELEASE.2023-10-14T01-57-03Z
|
||||||
depends_on:
|
depends_on:
|
||||||
minio:
|
minio:
|
||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
|
Loading…
Reference in New Issue
Block a user