gitea/modules/storage
Michael Owoc 713364fc71
Support optional/configurable IAMEndpoint for Minio Client (#32581) (#32581)
Targeting issue #32271

This modification allows native Kubernetes + AWS (EKS) authentication
with the Minio client, to Amazon S3 using the IRSA role assigned to a
Service account by replacing the hard coded reference to the
`DefaultIAMRoleEndpoint` with an optional configurable endpoint.

Internally, Minio's `credentials.IAM` provider implements a discovery
flow for IAM Endpoints if it is not set.

For backwards compatibility: 
- We have added a configuration mechanism for an `IamEndpoint` to retain
the unit test safety in `minio_test.go`.
- We believe existing clients will continue to function the same without
needing to provide a new config property since the internals of Minio
client also often resolve to the `http://169.254.169.254` default
endpoint that was being hard coded before

To test, we were able to build a docker image from source and, observe
it choosing the expected IAM endpoint, and see files uploaded via the
client.
2024-11-22 20:12:06 +00:00
..
testdata feat: add support for a credentials chain for minio access (#31051) 2024-05-27 20:56:04 +08:00
azureblob_test.go Azure blob storage support (#30995) 2024-05-30 07:33:50 +00:00
azureblob.go Fix missing signature key error when pulling Docker images with SERVE_DIRECT enabled (#32365) 2024-10-31 15:28:25 +00:00
helper_test.go Fix missing signature key error when pulling Docker images with SERVE_DIRECT enabled (#32365) 2024-10-31 15:28:25 +00:00
helper.go Fix missing signature key error when pulling Docker images with SERVE_DIRECT enabled (#32365) 2024-10-31 15:28:25 +00:00
local_test.go Fix all possible setting error related storages and added some tests (#23911) 2023-06-14 11:42:38 +08:00
local.go Fix missing signature key error when pulling Docker images with SERVE_DIRECT enabled (#32365) 2024-10-31 15:28:25 +00:00
minio_test.go Support optional/configurable IAMEndpoint for Minio Client (#32581) (#32581) 2024-11-22 20:12:06 +00:00
minio.go Support optional/configurable IAMEndpoint for Minio Client (#32581) (#32581) 2024-11-22 20:12:06 +00:00
storage_test.go Azure blob storage support (#30995) 2024-05-30 07:33:50 +00:00
storage.go Add artifacts test fixture (#30300) 2024-11-01 10:29:54 +08:00