Repository navigation
Releases: jtryno/TaskFlow
Releases · jtryno/TaskFlow
Release list
v0.1
TaskFlow v0.1 Release Notes
What is TaskFlow?
A task manager REST API built with FastAPI and SQLite, with a full CI/CD pipeline that automatically tests, scans, and deploys to AWS.
What's in this release
API
- 5 REST endpoints for full CRUD operations on tasks (create, list, get, update, delete)
- Input validation with Pydantic schemas
- Auto-generated API docs at
/docs
Testing
- 8 pytest tests covering all endpoints including both success and failure cases
- In-memory SQLite database for fast, isolated test runs
- Coverage reporting with pytest-cov
CI/CD Pipeline
- PR Pipeline -- Every pull request runs through linting (black + flake8), testing (pytest), building (Docker), and scaning (Trivy) before it can be merged
- Deploy Pipeline -- Merging to main automatically builds and pushes the Docker image to GHCR, then deploys it to an EC2 instance
- Branch protection on main so nothing gets in without passing all checks
Infrastructure
- Dockerized FastAPI app running on AWS EC2
- Elastic IP for a consistent public address
- Docker image stored in GitHub Container Registry
- Security group with restricted access and key-based SSH only
What's next
Still figuring that out but there are a lot of directions this could go such as a real database, HTTPS, infrastructure as code, monitoring, etc.