1
0
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:
Milos Gajdos 2023-10-20 16:20:30 +01:00 committed by GitHub
commit 708bc6f3e9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 21 deletions

@ -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