Blog with authentication, authorization, and error handling. Allows users to create, update and delete posts. Uses PyTest for unit testing. Uses Travis CI for automated testing. Deployed using Azure and Docker.
Python 3.x
Docker
Install Python 3.x
Select your favorite IDE (I use PyCharm so that is what I'll be doing the instructions in)
git clone https://github.com/Copyrighted/portfolio
Open project in preferred IDE
Set up Python Virtual Environment
To install requirements do pip install -r requirements.txt
To run all tests, use
python -m pytest tests
If you want to run unit tests you could do
python -m pytest --setup-show tests/unit/
Connect your github account to Travis-CI.org
The .travis.yaml file will take care of the tests.
Enable admin rights in your ACR
docker login <azure_container_registry_name>
cd ~/path/to/portfolio/folder
docker build . -t blog:latest
docker tag blog <azure_container_registry_name>/blog
docker push <azure_container_registry_name>/blog
Select the docker option when creating the Application
- Flask - Backend framework used
- SQLAlchemy - ORM Used
- SQLite - Database used
- Summernote - Markdown Editor used
- Jinja2 - Jinja2 used for templating
- Bcrypt - Bcrypt used to salt/hash passwords
- Docker - Docker used to make images and quickly deploy application
- Azure - Azure used to host container made from Docker Image
- Tyler Scheffler
This project is licensed under the MIT License - see the LICENSE.md file for details
Thanks to hackersandslackers.com for in depth info on Flasks inner workings. HackersandSlackers