A collection of utility functions for AWS services
Project description
============================================== x24142816 Remote worktime tracker Guide
This document provides an overview of the dependencies, setup, and deployment steps. And thiw project interacts with AWS services such as S3, DynamoDB, SQS, SNS, and CloudWatch.
1. Required Dependencies
Ensure you have Python 3.6+ installed.
To install the required dependencies, run:
pip install -r requirements.txt
List of dependencies:
boto3==1.37.8
botocore==1.37.8
Django==4.2.19
setuptools==59.6.0
gunicorn==23.0.0
Pillow==11.1.0
(Note: The requirements.txt file is located in the project's root directory.)
2. utils > library
utils - AWS Utilities Library.
utils is a Python library that provides various utility functions to interact
with AWS services such as S3, DynamoDB, SQS, and CloudWatch.
Features
- CloudWatch: Create log groups and streams, and write logs to CloudWatch.
- DynamoDB: Save and update user data and worktime in DynamoDB.
- S3: Manage files in S3 storage.
- SQS: Send and receive messages from SQS.
- SNS: Send notifications using SNS.
Installation
You can install this library using pip:
pip install utils
3. Application Setup & Execution
Clone the Repository
git clone https://github.com/Jiyoung0716/Final_CPP_Project.git
cd Final_CPP_Project
For macOS/Linux:
python -m venv env
source env/bin/activate
For Windows:
python -m venv env
env\Scripts\activate
Install Dependencies
pip install -r requirements.txt
env file** (store sensitive credentials):
AWS_REGION=us-east-1
S3_BUCKET_NAME=x24142816-s3bucket
DYNAMODB_TABLE_USERS=Users
DYNAMODB_TABLE_WORKTIME=Worktime
DYNAMODB_TABLE_PROJECTS=Projects
SNS_TOPIC_ARN=arn:aws:sns:us-east-1:278101256714:x24142816-notification
SQS_QUEUE_URL=https://sqs.us-east-1.amazonaws.com/278101256714/x24142816_JiyoungKim_Queues
Run the Application
python manage.py runserver 8080
python3 manage.py runserver 8080
4. Deployment Steps (Elastic Beanstalk)
Initialize Elastic Beanstalk
eb init -p python-3.9 Remoteworktimetracker
Create an Environment
No need since the environment already exists (my-env)
Deploy the Application
eb deploy
Check Logs
eb logs
Open Application
eb open
5. Configuration Files
** django.config (Elastic Beanstalk Configuration)**
Located in `.ebextensions/`, this file contains environment settings for Django.
option_settings:
aws:elasticbeanstalk:container:python:
WSGIPath: tracker.wsgi:application
** python-publish.yml (GitActions)**
This GitHub Actions workflow automates the CI/CD process
for publishing a Python package to PyPI.
(content: pylint-static analysis, library)
** Procile (Role to run Django with Gunicorn)**
web: gunicorn --bind 0.0.0.0:8080 tracker.wsgi:application
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file library_utils-0.1.8.tar.gz.
File metadata
- Download URL: library_utils-0.1.8.tar.gz
- Upload date:
- Size: 7.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.21
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cb6d668deecc887969eeac0d6d8bdcc857dfa0d320fd0fe78bb8a45a173742a4
|
|
| MD5 |
22470ec8df0b864e9f960ffebf2451a7
|
|
| BLAKE2b-256 |
00d9273151dbc29d4b0ed231c78fedef131b7ad9a3dd79b931ee3302b86895a4
|
File details
Details for the file library_utils-0.1.8-py3-none-any.whl.
File metadata
- Download URL: library_utils-0.1.8-py3-none-any.whl
- Upload date:
- Size: 8.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.21
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
02989c0425176024c1e828eb8ecea6a3ce78f2b62b7c5cdea683d7ed9a7090dc
|
|
| MD5 |
bf20399b0e484ca59ff262d3ea797874
|
|
| BLAKE2b-256 |
fedca51973d23388ab4e98052f4d82c04cda4f2d85c33cc718cf203a163ff6b2
|