mirror of
https://github.com/jkocon/AWS_S3_Upploader.git
synced 2026-02-24 05:14:41 +01:00
64 lines
1.7 KiB
Markdown
64 lines
1.7 KiB
Markdown
# AWS Upload Tool
|
|
|
|
This Python script allows you to upload files from a local folder to an AWS S3 bucket. It supports dynamic configuration through a YAML file, making it flexible and easy to manage.
|
|
|
|
## ⚙️ Configuration
|
|
|
|
Create a `config.yaml` file inside the `config/` folder:
|
|
|
|
```yaml
|
|
aws_access_key_id: "YOUR_ACCESS_KEY_ID"
|
|
aws_secret_access_key: "YOUR_SECRET_ACCESS_KEY"
|
|
region_name: "us-west-2"
|
|
bucket_name: "your-s3-bucket-name"
|
|
local_folder: "D:\\Path\\To\\Local\\Folder"
|
|
s3_prefix: "optional/prefix/"
|
|
```
|
|
|
|
- Your AWS access key.
|
|
- Your AWS secret access key.
|
|
- AWS region where your bucket is located.
|
|
- Name of the S3 bucket.
|
|
- Path to the local folder with files to upload.
|
|
- *(optional)*: Prefix to organize files within the S3 bucket.
|
|
|
|
## 🚀 Installation
|
|
|
|
1. **Clone or download the project.**
|
|
2. **Navigate to the project folder:**
|
|
```bash
|
|
cd AWS_Upload
|
|
```
|
|
3. **Install dependencies:**
|
|
```bash
|
|
pip install -r requirements.txt
|
|
```
|
|
|
|
## 📤 Usage
|
|
|
|
Run the script from the project directory:
|
|
|
|
```bash
|
|
python src/aws_uploader.py
|
|
```
|
|
|
|
## 📋 Logging
|
|
|
|
- Log files are saved in the `logs/` folder.
|
|
- Log format: `LOG_dd_mm_yyyy_hh_mm_ss.log`
|
|
- Logs include information about upload progress and any errors.
|
|
|
|
## ❗ Error Handling
|
|
|
|
- Errors during file uploads (e.g., invalid credentials, missing bucket) are logged both in the console and in the log file.
|
|
- General exceptions are also captured and logged for debugging.
|
|
|
|
## 🤝 Contributing
|
|
|
|
Pull requests are welcome. For major changes, please open an issue first to discuss what you'd like to change.
|
|
|
|
## 📄 License
|
|
|
|
This project is licensed under the MIT License.
|
|
|