Documentation
aws_s3
Manage AWS S3 objects for cloud storage operations.
Attributes
check_mode:
support: full
Parameters
| Parameter | Required | Type | Values | Description |
|---|---|---|---|---|
| access_key | string | AWS access key ID. If not provided, uses AWS_ACCESS_KEY_ID environment variable. | ||
| bucket | true | string | The S3 bucket name. | |
| dest | string | Local file path to download (required for mode=get). | ||
| endpoint | string | Custom S3 endpoint URL (for S3-compatible services like MinIO). | ||
| max_keys | integer | Maximum number of objects to return when listing. | ||
| mode | string | get put delete list |
The operation mode: get, put, delete, or list. | |
| object | string | The S3 object key path. | ||
| prefix | string | Prefix to filter objects when listing. | ||
| region | string | AWS region. If not provided, uses AWS_REGION or AWS_DEFAULT_REGION environment variable. | ||
| secret_key | string | AWS secret access key. If not provided, uses AWS_SECRET_ACCESS_KEY environment variable. | ||
| src | string | Local file path to upload (required for mode=put). |
Examples
- name: Download file from S3
aws_s3:
bucket: my-bucket
object: config/app.yaml
dest: /etc/app/config.yaml
mode: get
- name: Upload file to S3
aws_s3:
bucket: my-bucket
object: backups/data.tar.gz
src: /tmp/data.tar.gz
mode: put
- name: Delete object from S3
aws_s3:
bucket: my-bucket
object: old/backup.tar.gz
mode: delete
- name: List objects in bucket
aws_s3:
bucket: my-bucket
mode: list
register: s3_objects
- name: Upload with custom endpoint (MinIO)
aws_s3:
bucket: my-bucket
object: data/file.txt
src: /tmp/file.txt
mode: put
endpoint: http://minio:9000
- name: Download with specific region
aws_s3:
bucket: my-bucket
object: config.yaml
dest: /tmp/config.yaml
mode: get
region: us-west-2