Michael Stack 1e1aa71dab
Build a sidecar container that refreshes s3 credentials (#11945)
* packaging/docker/Dockerfile
     Add fdb-aws-s3-credentials-fetcher-sidecar container.
     Runs perpetual script that writes blob-credentials.json to /var/fdb.

* packaging/docker/build-images.sh
     Build and publish new sidecar container

* packaging/docker/fdb-aws-s3-credentials-fetcher/README.md
* packaging/docker/fdb-aws-s3-credentials-fetcher/fdb-aws-s3-credentials-fetcher.go
* packaging/docker/fdb-aws-s3-credentials-fetcher/go.mod
* packaging/docker/fdb-aws-s3-credentials-fetcher/go.sum
     Script that fetches credentials via IRSA (IAM Roles for Service Accounts).

* packaging/docker/fdb-aws-s3-credentials-fetcher/fdb-aws-s3-credentials-fetcher.go
     Match the key generated by fdbserver internally.

* fdbclient/S3BlobStore.actor.cpp
     Add some logging around fail-to-find-credentials -- why.

* * fdbclient/tests/aws_fixture.sh
 Use the fdb-aws-s3-credentials-fetcher script fetching credentials if available in ctests.

* fdbclient/tests/s3client_test.sh
 TMPDIR might not be defined when we print usage.

Co-authored-by: Johannes Scheuermann <johscheuer@users.noreply.github.com>
2025-03-03 08:39:33 -08:00
..