remote.s3
remote.s3 exposes the string contents of a file located in AWS S3 to other components.
remote.s3 polls the file for changes, so the most recent content is always available.
The most common use of remote.s3 is to load secrets from files.
You can specify multiple remote.s3 components by giving them different labels.
By default, remote.s3 uses AWS environment variables to authenticate against S3.
Use the key and secret arguments inside client blocks to provide custom authentication.
Note
remote.s3can read other S3-compatible systems, but they may require specific authentication environment variables.remote.s3isn’t guaranteed to work with non-AWS S3 systems.
Usage
remote.s3 "<LABEL>" {
path = "<S3_FILE_PATH>"
}Arguments
You can use the following arguments with remote.s3:
Note
pathmust include a full path to a file. This doesn’t support reading of directories.
Blocks
You can use the following block with remote.s3:
No valid configuration blocks found.
client
The client block customizes options to connect to the S3 server.
Exported fields
The following fields are exported and can be referenced by other components:
The content field is secret if is_secret is true.
Component health
Instances of remote.s3 report as healthy if the most recent read of the watched file was successful.
Debug information
remote.s3 doesn’t expose any component-specific debug information.
Debug metrics
remote.s3 exposes the following metrics:
Examples
remote.s3 "data" {
path = "s3://test-bucket/file.txt"
}