You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gitea/modules
nekrondev 3c91b09c19
minio: add missing region on client initialization (#26412)
The MinIO client isn't redirecting to the correct AWS endpoint if a
non-default data center is used.

In my use case I created an AWS bucket at `eu-central-1` region. Because
of the missing region initialization of the client the default
`us-east-1` API endpoint is used returning a `301 Moved Permanently`
response that's not handled properly by MinIO client. This in return
aborts using S3 storage on AWS as the `BucketExists()` call will fail
with the http moved error.

MinIO client trace shows the issue:

```text
---------START-HTTP---------
HEAD / HTTP/1.1
Host: xxxxxxxxxxx-prod-gitea-data.s3.dualstack.us-east-1.amazonaws.com
User-Agent: MinIO (windows; amd64) minio-go/v7.0.61
Authorization: AWS4-HMAC-SHA256 Credential=**REDACTED**/20230809/accesspoint.eu-central-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=**REDACTED**
X-Amz-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
X-Amz-Date: 20230809T141143Z

HTTP/1.1 301 Moved Permanently
Connection: close
Content-Type: application/xml
Date: Wed, 09 Aug 2023 14:11:43 GMT
Server: AmazonS3
X-Amz-Bucket-Region: eu-central-1
X-Amz-Id-2: UK7wfeYi0HcTcytNvQ3wTAZ5ZP1mOSMnvRZ9Fz4xXzeNsS47NB/KfFx2unFxo3L7XckHpMNPPVo=
X-Amz-Request-Id: S1V2MJV8SZ11GEVN
---------END-HTTP---------
```

Co-authored-by: Heiko Besemann <heiko.besemann@qbeyond.de>
2 years ago
..
actions Fix the bug when getting files changed for `pull_request_target` event (#26320) 2 years ago
activitypub Update tool dependencies, lock govulncheck and actionlint (#25655) 2 years ago
analyze Rename code_langauge.go to code_language.go (#26377) 2 years ago
assetfs Skip unuseful error message in dev mode when watching local filesystem (#25919) 2 years ago
auth Use a general approach to access custom/static/builtin assets (#24022) 2 years ago
avatar Remove nfnt/resize and oliamb/cutter (#25999) 2 years ago
base Replace `interface{}` with `any` (#25686) 2 years ago
cache improve unit test for caching (#26185) 2 years ago
charset Replace `interface{}` with `any` (#25686) 2 years ago
container Implement FSFE REUSE for golang files (#21840) 2 years ago
context Use template context function for avatar rendering (#26385) 2 years ago
csv Refactor locale number (#24134) 2 years ago
doctor Upgrade go dependencies (#25819) 2 years ago
emoji Update emoji set to Unicode 15 (#25595) 2 years ago
eventsource Less naked returns (#25713) 2 years ago
generate Bump github.com/golang-jwt/jwt to v5 (#25975) 2 years ago
git Make git batch operations use parent context timeout instead of default timeout (#26325) 2 years ago
gitgraph Add context cache as a request level cache (#22294) 2 years ago
graceful Allow the use of alternative net.Listener implementations by downstreams (#25855) 2 years ago
hcaptcha Consume hcaptcha and pwn deps (#22610) 2 years ago
highlight Upgrade go dependencies (#25819) 2 years ago
hostmatcher Implement FSFE REUSE for golang files (#21840) 2 years ago
html Refactor backend SVG package and add tests (#26335) 2 years ago
httpcache Less naked returns (#25713) 2 years ago
httplib Less naked returns (#25713) 2 years ago
indexer Refactor and enhance issue indexer to support both searching, filtering and paging (#26012) 2 years ago
issue/template Replace `interface{}` with `any` (#25686) 2 years ago
json Replace `interface{}` with `any` (#25686) 2 years ago
label Make label templates have consistent behavior and priority (#23749) 2 years ago
lfs Rewrite logger system (#24726) 2 years ago
log Use stderr as fallback if the log file can't be opened (#26074) 2 years ago
markup Make `user-content-* ` consistent with github (#26388) 2 years ago
mcaptcha Implement FSFE REUSE for golang files (#21840) 2 years ago
metrics Use a separate admin page to show global stats, remove `actions` stat (#25062) 2 years ago
migration Replace `interface{}` with `any` (#25686) 2 years ago
mirror Improve queue and logger context (#24924) 2 years ago
nosql Update tool dependencies, lock govulncheck and actionlint (#25655) 2 years ago
notification Refactor and enhance issue indexer to support both searching, filtering and paging (#26012) 2 years ago
options Use a general approach to access custom/static/builtin assets (#24022) 2 years ago
packages Prevent newline errors with Debian packages (#26332) 2 years ago
paginator Use more specific test methods (#24265) 2 years ago
pprof Implement FSFE REUSE for golang files (#21840) 2 years ago
private Replace `interface{}` with `any` (#25686) 2 years ago
process Less naked returns (#25713) 2 years ago
proxy Use proxy for pull mirror (#22771) 2 years ago
proxyprotocol Implement FSFE REUSE for golang files (#21840) 2 years ago
public Serve pre-defined files in "public", add "security.txt", add CORS header for ".well-known" (#25974) 2 years ago
queue Calculate MAX_WORKERS default value by CPU number (#26177) 2 years ago
recaptcha Implement FSFE REUSE for golang files (#21840) 2 years ago
references Use correct captured group range when parsing cross-reference (#22672) 2 years ago
regexplru Upgrade go dependencies (#25819) 2 years ago
repository Refactor and enhance issue indexer to support both searching, filtering and paging (#26012) 2 years ago
secret Improve decryption failure message (#24573) 2 years ago
session Replace `interface{}` with `any` (#25686) 2 years ago
setting Pre-register OAuth2 applications for git credential helpers (#26291) 2 years ago
sitemap Fix sitemap (#22272) 2 years ago
ssh Fix admin queue page title (#26409) 2 years ago
storage minio: add missing region on client initialization (#26412) 2 years ago
structs Doc update swagger doc for POST /orgs/{org}/teams (#26155) 2 years ago
svg Refactor backend SVG package and add tests (#26335) 2 years ago
sync Implement FSFE REUSE for golang files (#21840) 2 years ago
system Implement FSFE REUSE for golang files (#21840) 2 years ago
templates Use template context function for avatar rendering (#26385) 2 years ago
test Start using template context function (#26254) 2 years ago
testlogger Replace `interface{}` with `any` (#25686) 2 years ago
timeutil Fix incorrect webhook time and use relative-time to display it (#24477) 2 years ago
translation Replace `interface{}` with `any` (#25686) 2 years ago
turnstile Add new captcha: cloudflare turnstile (#22369) 2 years ago
typesniffer Do not recognize text files as audio (#23355) 2 years ago
updatechecker Implement FSFE REUSE for golang files (#21840) 2 years ago
upload Implement FSFE REUSE for golang files (#21840) 2 years ago
uri Implement FSFE REUSE for golang files (#21840) 2 years ago
user Implement FSFE REUSE for golang files (#21840) 2 years ago
util Less naked returns (#25713) 2 years ago
validation Replace `interface{}` with `any` (#25686) 2 years ago
web Fix incorrect router logger (#26137) 2 years ago
webhook New webhook trigger for receiving Pull Request review requests (#24481) 2 years ago