mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-29 10:57:44 +09:00 
			
		
		
		
	* Add a storage layer for attachments * Fix some bug * fix test * Fix copyright head and lint * Fix bug * Add setting for minio and flags for migrate-storage * Add documents * fix lint * Add test for minio store type on attachments * fix test * fix test * Apply suggestions from code review Co-authored-by: guillep2k <18600385+guillep2k@users.noreply.github.com> * Add warning when storage migrated successfully * Fix drone * fix test * rebase * Fix test * display the error on console * Move minio test to amd64 since minio docker don't support arm64 * refactor the codes * add trace * Fix test * remove log on xorm * Fi download bug * Add a storage layer for attachments * Add setting for minio and flags for migrate-storage * fix lint * Add test for minio store type on attachments * Apply suggestions from code review Co-authored-by: guillep2k <18600385+guillep2k@users.noreply.github.com> * Fix drone * fix test * Fix test * display the error on console * Move minio test to amd64 since minio docker don't support arm64 * refactor the codes * add trace * Fix test * Add URL function to serve attachments directly from S3/Minio * Add ability to enable/disable redirection in attachment configuration * Fix typo * Add a storage layer for attachments * Add setting for minio and flags for migrate-storage * fix lint * Add test for minio store type on attachments * Apply suggestions from code review Co-authored-by: guillep2k <18600385+guillep2k@users.noreply.github.com> * Fix drone * fix test * Fix test * display the error on console * Move minio test to amd64 since minio docker don't support arm64 * don't change unrelated files * Fix lint * Fix build * update go.mod and go.sum * Use github.com/minio/minio-go/v6 * Remove unused function * Upgrade minio to v7 and some other improvements * fix lint * Fix go mod Co-authored-by: guillep2k <18600385+guillep2k@users.noreply.github.com> Co-authored-by: Tyler <tystuyfzand@gmail.com>
		
			
				
	
	
		
			62 lines
		
	
	
		
			4.6 KiB
		
	
	
	
		
			Go
		
	
	
	
		
			Vendored
		
	
	
	
			
		
		
	
	
			62 lines
		
	
	
		
			4.6 KiB
		
	
	
	
		
			Go
		
	
	
	
		
			Vendored
		
	
	
	
| /*
 | |
|  * MinIO Go Library for Amazon S3 Compatible Cloud Storage
 | |
|  * Copyright 2015-2017 MinIO, Inc.
 | |
|  *
 | |
|  * Licensed under the Apache License, Version 2.0 (the "License");
 | |
|  * you may not use this file except in compliance with the License.
 | |
|  * You may obtain a copy of the License at
 | |
|  *
 | |
|  *     http://www.apache.org/licenses/LICENSE-2.0
 | |
|  *
 | |
|  * Unless required by applicable law or agreed to in writing, software
 | |
|  * distributed under the License is distributed on an "AS IS" BASIS,
 | |
|  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | |
|  * See the License for the specific language governing permissions and
 | |
|  * limitations under the License.
 | |
|  */
 | |
| 
 | |
| package minio
 | |
| 
 | |
| // Non exhaustive list of AWS S3 standard error responses -
 | |
| // http://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html
 | |
| var s3ErrorResponseMap = map[string]string{
 | |
| 	"AccessDenied":                      "Access Denied.",
 | |
| 	"BadDigest":                         "The Content-Md5 you specified did not match what we received.",
 | |
| 	"EntityTooSmall":                    "Your proposed upload is smaller than the minimum allowed object size.",
 | |
| 	"EntityTooLarge":                    "Your proposed upload exceeds the maximum allowed object size.",
 | |
| 	"IncompleteBody":                    "You did not provide the number of bytes specified by the Content-Length HTTP header.",
 | |
| 	"InternalError":                     "We encountered an internal error, please try again.",
 | |
| 	"InvalidAccessKeyId":                "The access key ID you provided does not exist in our records.",
 | |
| 	"InvalidBucketName":                 "The specified bucket is not valid.",
 | |
| 	"InvalidDigest":                     "The Content-Md5 you specified is not valid.",
 | |
| 	"InvalidRange":                      "The requested range is not satisfiable",
 | |
| 	"MalformedXML":                      "The XML you provided was not well-formed or did not validate against our published schema.",
 | |
| 	"MissingContentLength":              "You must provide the Content-Length HTTP header.",
 | |
| 	"MissingContentMD5":                 "Missing required header for this request: Content-Md5.",
 | |
| 	"MissingRequestBodyError":           "Request body is empty.",
 | |
| 	"NoSuchBucket":                      "The specified bucket does not exist.",
 | |
| 	"NoSuchBucketPolicy":                "The bucket policy does not exist",
 | |
| 	"NoSuchKey":                         "The specified key does not exist.",
 | |
| 	"NoSuchUpload":                      "The specified multipart upload does not exist. The upload ID may be invalid, or the upload may have been aborted or completed.",
 | |
| 	"NotImplemented":                    "A header you provided implies functionality that is not implemented",
 | |
| 	"PreconditionFailed":                "At least one of the pre-conditions you specified did not hold",
 | |
| 	"RequestTimeTooSkewed":              "The difference between the request time and the server's time is too large.",
 | |
| 	"SignatureDoesNotMatch":             "The request signature we calculated does not match the signature you provided. Check your key and signing method.",
 | |
| 	"MethodNotAllowed":                  "The specified method is not allowed against this resource.",
 | |
| 	"InvalidPart":                       "One or more of the specified parts could not be found.",
 | |
| 	"InvalidPartOrder":                  "The list of parts was not in ascending order. The parts list must be specified in order by part number.",
 | |
| 	"InvalidObjectState":                "The operation is not valid for the current state of the object.",
 | |
| 	"AuthorizationHeaderMalformed":      "The authorization header is malformed; the region is wrong.",
 | |
| 	"MalformedPOSTRequest":              "The body of your POST request is not well-formed multipart/form-data.",
 | |
| 	"BucketNotEmpty":                    "The bucket you tried to delete is not empty",
 | |
| 	"AllAccessDisabled":                 "All access to this bucket has been disabled.",
 | |
| 	"MalformedPolicy":                   "Policy has invalid resource.",
 | |
| 	"MissingFields":                     "Missing fields in request.",
 | |
| 	"AuthorizationQueryParametersError": "Error parsing the X-Amz-Credential parameter; the Credential is mal-formed; expecting \"<YOUR-AKID>/YYYYMMDD/REGION/SERVICE/aws4_request\".",
 | |
| 	"MalformedDate":                     "Invalid date format header, expected to be in ISO8601, RFC1123 or RFC1123Z time format.",
 | |
| 	"BucketAlreadyOwnedByYou":           "Your previous request to create the named bucket succeeded and you already own it.",
 | |
| 	"InvalidDuration":                   "Duration provided in the request is invalid.",
 | |
| 	"XAmzContentSHA256Mismatch":         "The provided 'x-amz-content-sha256' header does not match what was computed.",
 | |
| 	// Add new API errors here.
 | |
| }
 |