[Sample-Platform] Add database upgrade mechanism
Introduction
CCExtractor is a tool to extract subtitles/closed captions from video streams. In order to verify that changes to the code don't break previous samples with issues, we created a test suite. To run this whenever a pull request on GitHub is opened, or when a commit is made, we created the Sample Platform (often abbreviated as SP), which is a website where users can submit faulty samples, and which kicks off the test suite on different platforms.
The task
The sample platform is missing a database upgrade mechanism. This means that whenever changes to the database model of SQLAlchemy happen, an administrator needs to manually upgrade the database tables. We'd like to integrate a library that can do this for us when we deploy, or make the process easier. A potential library is https://flask-migrate.readthedocs.io/en/latest/.
Requirements to complete this task
We expect an opened pull request, which contains the modification requested above, unit tests that cover (most of) the changes, and documentation where necessary.