apkipa 1 週間 前
コミット
61bc5c8f98
2 ファイル変更131 行追加45 行削除
  1. 120 45
      main.go
  2. 11 0
      util/util.go

ファイルの差分が大きいため隠しています
+ 120 - 45
main.go


+ 11 - 0
util/util.go

@@ -57,6 +57,17 @@ func LastElem[T any](s []T) T {
 	return s[len(s)-1]
 }
 
+func MinioObjectExists(minioClient *minio.Client, bucketName string, filePath string) (bool, error) {
+	_, err := minioClient.StatObject(context.Background(), bucketName, filePath, minio.StatObjectOptions{})
+	if err != nil {
+		if minio.ToErrorResponse(err).Code == "NoSuchKey" {
+			return false, nil
+		}
+		return false, fmt.Errorf("stat object failed: %w", err)
+	}
+	return true, nil
+}
+
 func MinioUploadFolder(minioClient *minio.Client, bucketName string, objPath string, localPath string) error {
 	// Walk the local folder
 	err := filepath.WalkDir(localPath, func(path string, d os.DirEntry, err error) error {