forgejo-federation/services
merlleu a587d25261
Add auth-required to config.json for Cargo http registry (#26729)
Cargo registry-auth feature requires config.json to have a property
auth-required set to true in order to send token to all registry
requests.
This is ok for git index because you can manually edit the config.json
file to add the auth-required, but when using sparse
(setting index url to
"sparse+https://git.example.com/api/packages/{owner}/cargo/"), the
config.json is dynamically rendered, and does not reflect changes to the
config.json file in the repo.

I see two approaches:
- Serve the real config.json file when fetching the config.json on the
cargo service.
- Automatically detect if the registry requires authorization. (This is
what I implemented in this PR).

What the PR does:
- When a cargo index repository is created, on the config.json, set
auth-required to wether or not the repository is private.
- When the cargo/config.json endpoint is called, set auth-required to
wether or not the request was authorized using an API token.
2023-08-28 07:05:39 +00:00
..
actions chore(actions): support cron schedule task (#26655) 2023-08-24 03:06:51 +00:00
agit Add context parameter to some database functions (#26055) 2023-07-22 22:14:27 +08:00
asymkey Add context cache as a request level cache (#22294) 2023-02-15 21:37:34 +08:00
attachment Preserve file size when creating attachments (#23406) 2023-03-12 03:48:07 -04:00
auth Use object-fit: contain for oauth2 custom icons (#26493) 2023-08-14 16:21:04 +00:00
automerge Improve queue and logger context (#24924) 2023-05-26 07:31:55 +00:00
context Replace interface{} with any (#25686) 2023-07-04 18:36:08 +00:00
convert add Upload URL to release API (#26663) 2023-08-24 10:36:10 +00:00
cron chore(actions): support cron schedule task (#26655) 2023-08-24 03:06:51 +00:00
externalaccount Replace interface{} with any (#25686) 2023-07-04 18:36:08 +00:00
forms Allow to archive labels (#26478) 2023-08-14 11:56:14 +02:00
gitdiff Fix stderr usages (#26477) 2023-08-13 20:49:30 +08:00
issue Add transaction when creating pull request created dirty data (#26259) 2023-08-10 02:39:21 +00:00
lfs Bump github.com/golang-jwt/jwt to v5 (#25975) 2023-07-19 09:57:10 +00:00
mailer Replace interface{} with any (#25686) 2023-07-04 18:36:08 +00:00
markup Make web context initialize correctly for different cases (#26726) 2023-08-25 19:07:42 +08:00
migrations Add context parameter to some database functions (#26055) 2023-07-22 22:14:27 +08:00
mirror Move modules/mirror to services (#26737) 2023-08-27 10:24:45 +08:00
org Refactor rename user and rename organization (#24052) 2023-05-21 23:13:47 +08:00
packages Add auth-required to config.json for Cargo http registry (#26729) 2023-08-28 07:05:39 +00:00
pull Fix bug for ctx usage (#26762) 2023-08-28 04:06:47 +00:00
release Less naked returns (#25713) 2023-07-07 05:31:56 +00:00
repository Add link to job details and tooltip to commit status in repo list in dashboard (#26326) 2023-08-21 15:26:10 +08:00
task Add Retry button when creating a mirror-repo fails (#26228) 2023-08-04 10:21:32 +08:00
user add unit test for user renaming (#26261) 2023-08-03 09:38:51 +08:00
webhook Modify the content format of the Feishu webhook (#25106) 2023-08-24 09:00:11 +08:00
wiki Introduce ctx.PathParamRaw to avoid incorrect unescaping (#26392) 2023-08-09 14:57:45 +08:00