This project demonstrates a basic CI/CD pipeline using GitHub Actions and Render deployment.
- Simple Python Flask web application
- Continuous Integration with GitHub Actions
- Continuous Deployment to Render
- Automated testing and deployment pipeline
- Clone and setup:
git clone https://github.com/Jyyoungg/devops-cicd-week1.git
cd devops-cicd-week1
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt- Run locally:
python app.pyVisit http://localhost:5000 to view the application.
- Python 3.9
- Flask 3.0.2
- pytest 8.0.2
- GitHub Actions
- Render (for deployment)
- Gunicorn 21.2.0 (production server)
├── .github/
│ └── workflows/
│ └── ci-cd.yml # CI/CD workflow configuration
├── docs/
│ └── setup-guide.md # Detailed documentation
├── app.py # Main Flask application
├── requirements.txt # Python dependencies
├── render.yaml # Render deployment configuration
├── tests/
│ └── test_app.py # Application tests
└── README.md # Project overview
- Responsive web interface
- Environment-aware configuration
- Automated testing
- Continuous deployment
- Production-ready setup
- Set up GitHub repository
- Create basic Flask application
- Set up local development environment
- Configure GitHub Actions
- Add comprehensive documentation
- Deploy to Render
- Complete CI/CD pipeline
- Add testing suite
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is open source and available under the MIT License.
- Flask documentation
- GitHub Actions documentation
- Render deployment guides
- Python testing best practices