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
Zettat123 0690cb076b
Fix `missing signature key` error when pulling Docker images with `SERVE_DIRECT` enabled (#32365)
Fix #28121

I did some tests and found that the `missing signature key` error is
caused by an incorrect `Content-Type` header. Gitea correctly sets the
`Content-Type` header when serving files.

348d1d0f32/routers/api/packages/container/container.go (L712-L717)
However, when `SERVE_DIRECT` is enabled, the `Content-Type` header may
be set to an incorrect value by the storage service. To fix this issue,
we can use query parameters to override response header values.

https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
<img width="600px"
src="https://github.com/user-attachments/assets/f2ff90f0-f1df-46f9-9680-b8120222c555"
/>

In this PR, I introduced a new parameter to the `URL` method to support
additional parameters.

```
URL(path, name string, reqParams url.Values) (*url.URL, error)
```

---

Most S3-like services support specifying the content type when storing
objects. However, Gitea always use `application/octet-stream`.
Therefore, I believe we also need to improve the `Save` method to
support storing objects with the correct content type.

b7fb20e73e/modules/storage/minio.go (L214-L221)
5 months ago
..
actions Fix wrong status of `Set up Job` when first step is skipped (#32120) 6 months ago
activitypub Remove SHA1 for support for ssh rsa signing (#31857) 7 months ago
analyze Rename code_langauge.go to code_language.go (#26377) 2 years ago
assetfs Use `Set[Type]` instead of `map[Type]bool/struct{}`. (#26804) 2 years ago
auth Add Passkey login support (#31504) 9 months ago
avatar Use `crypto/sha256` (#29386) 1 year ago
badge Implement actions badge svgs (#28102) 1 year ago
base fix OIDC introspection authentication (#31632) 8 months ago
cache bump to go 1.23 (#31855) 7 months ago
charset refactor: remove redundant err declarations (#32381) 5 months ago
container Allow disabling authentication related user features (#31535) 9 months ago
csv Render embedded code preview by permlink in markdown (#30234) 12 months ago
dump Refactor "dump" sub-command (#30240) 12 months ago
emoji Update emoji set to Unicode 15 (#25595) 2 years ago
eventsource Final round of `db.DefaultContext` refactor (#27587) 1 year ago
generate Refactor JWT secret generating & decoding code (#29172) 1 year ago
git Fix clean tmp dir (#32360) 5 months ago
gitgraph More `db.DefaultContext` refactor (#27265) 2 years ago
gitrepo Use repo as of renderctx's member rather than a repoPath on metas (#29222) 10 months ago
globallock Use global lock instead of NewExclusivePool to allow distributed lock between multiple Gitea instances (#31813) 7 months ago
graceful Remove unused error in graceful manager (#29871) 1 year ago
hcaptcha Consume hcaptcha and pwn deps (#22610) 2 years ago
highlight Add option to disable ambiguous unicode characters detection (#28454) 1 year ago
hostmatcher Support allowed hosts for migrations to work with proxy (#32025) 6 months ago
html Refactor backend SVG package and add tests (#26335) 2 years ago
httpcache Fix wrong last modify time (#32102) 6 months ago
httplib Fix wrong last modify time (#32102) 6 months ago
indexer Update go dependencies (#32389) 5 months ago
issue/template bump to go 1.23 (#31855) 7 months ago
json Replace `interface{}` with `any` (#25686) 2 years ago
label Make label templates have consistent behavior and priority (#23749) 2 years ago
lfs Add new [lfs_client].BATCH_SIZE and [server].LFS_MAX_BATCH_SIZE config settings. (#32307) 5 months ago
lfstransfer Add pure SSH LFS support (#31516) 6 months ago
log Add some tests to clarify the "must-change-password" behavior (#30693) 11 months ago
markup Update go dependencies (#32389) 5 months ago
mcaptcha Implement FSFE REUSE for golang files (#21840) 2 years ago
metrics Rename project board -> column to make the UI less confusing (#30170) 10 months ago
migration Support migrating GitHub/GitLab PR draft status (#32242) 5 months ago
nosql Update tool dependencies, lock govulncheck and actionlint (#25655) 2 years ago
optional Resolve lint for unused parameter and unnecessary type arguments (#30750) 11 months ago
options Use a general approach to access custom/static/builtin assets (#24022) 2 years ago
packages Fix `missing signature key` error when pulling Docker images with `SERVE_DIRECT` enabled (#32365) 5 months ago
paginator Use more specific test methods (#24265) 2 years ago
pprof Implement FSFE REUSE for golang files (#21840) 2 years ago
private Make git push options accept short name (#32245) 5 months ago
process Update misspell to 0.5.1 and add `misspellings.csv` (#30573) 11 months ago
proxy Use proxy for pull mirror (#22771) 2 years ago
proxyprotocol Implement FSFE REUSE for golang files (#21840) 2 years ago
public Refactor CORS handler (#28587) 1 year ago
queue bump to go 1.23 (#31855) 7 months ago
recaptcha Implement FSFE REUSE for golang files (#21840) 2 years ago
references Refactor to use UnsafeStringToBytes (#31358) 9 months ago
regexplru Upgrade go dependencies (#25819) 2 years ago
repository Support repo license (#24872) 6 months ago
secret Use `crypto/sha256` (#29386) 1 year ago
session Improve oauth2 client "preferred username field" logic and the error handling (#30622) 11 months ago
setting Add new [lfs_client].BATCH_SIZE and [server].LFS_MAX_BATCH_SIZE config settings. (#32307) 5 months ago
sitemap Fix sitemap (#22272) 2 years ago
ssh Remove SSH workaround (#27893) 1 year ago
storage Fix `missing signature key` error when pulling Docker images with `SERVE_DIRECT` enabled (#32365) 5 months ago
structs Make admins adhere to branch protection rules (#32248) 5 months ago
svg Refactor markdown attention render (#29984) 1 year ago
sync Use global lock instead of NewExclusivePool to allow distributed lock between multiple Gitea instances (#31813) 7 months ago
system Refactor to use UnsafeStringToBytes (#31358) 9 months ago
templates Lazy load avatar images (#32051) 6 months ago
test Remove sub-path from container registry realm (#31293) 10 months ago
testlogger Replace `interface{}` with `any` (#25686) 2 years ago
timeutil Refactor "dump" sub-command (#30240) 12 months ago
translation Render embedded code preview by permlink in markdown (#30234) 12 months ago
turnstile Add new captcha: cloudflare turnstile (#22369) 2 years ago
typesniffer Detect ogg mime-type as audio or video (#26494) 2 years ago
updatechecker Replace more db.DefaultContext (#27628) 1 year ago
uri Implement FSFE REUSE for golang files (#21840) 2 years ago
user Implement FSFE REUSE for golang files (#21840) 2 years ago
util Refactor to use UnsafeStringToBytes (#31358) 9 months ago
validation Check blocklist for emails when adding them to account (#26812) 2 years ago
web Refactor names (#31405) 9 months ago
webhook Fix schedule tasks bugs (#28691) 1 year ago
zstd Support compression for Actions logs (#31761) 8 months ago