2018-03-19 19:25:13 +01:00
|
|
|
# Content Database
|
|
|
|
|
2019-01-09 23:35:11 +01:00
|
|
|
Content database for Minetest mods, games, and more.
|
2018-03-19 19:25:13 +01:00
|
|
|
|
2019-01-09 23:35:11 +01:00
|
|
|
Developed by rubenwardy, license GPLv3.0+.
|
2018-05-25 18:41:16 +02:00
|
|
|
|
|
|
|
## How-tos
|
|
|
|
|
2019-01-09 23:35:11 +01:00
|
|
|
Note: you should first read one of the guides on the [Github repo wiki](https://github.com/minetest/contentdb/wiki)
|
2018-05-27 21:15:35 +02:00
|
|
|
|
|
|
|
```sh
|
2019-01-09 23:35:11 +01:00
|
|
|
# Run celery worker
|
2018-05-27 21:15:35 +02:00
|
|
|
FLASK_CONFIG=../config.cfg celery -A app.tasks.celery worker
|
|
|
|
|
2018-05-25 18:41:16 +02:00
|
|
|
# if sqlite
|
2019-11-12 23:36:30 +01:00
|
|
|
python utils/setup.py -t
|
2018-05-25 18:41:16 +02:00
|
|
|
rm db.sqlite && python setup.py -t && FLASK_CONFIG=../config.cfg FLASK_APP=app/__init__.py flask db stamp head
|
|
|
|
|
|
|
|
# Create migration
|
|
|
|
FLASK_CONFIG=../config.cfg FLASK_APP=app/__init__.py flask db migrate
|
|
|
|
# Run migration
|
2018-06-02 20:41:13 +02:00
|
|
|
FLASK_CONFIG=../config.cfg FLASK_APP=app/__init__.py flask db upgrade
|
2019-01-28 21:48:07 +01:00
|
|
|
|
|
|
|
# Enter docker
|
|
|
|
docker exec -it contentdb_app_1 bash
|
2020-01-18 02:42:47 +01:00
|
|
|
|
|
|
|
# Hot/live reload (only works with FLASK_DEBUG=1)
|
|
|
|
./utils/reload.sh
|
|
|
|
|
|
|
|
# Cold update a running version of CDB with minimal downtime
|
|
|
|
./utils/update.sh
|
2018-05-25 18:41:16 +02:00
|
|
|
```
|
2019-11-27 02:06:24 +01:00
|
|
|
|
|
|
|
## Database
|
|
|
|
|
|
|
|
|
|
|
|
```mermaid
|
|
|
|
classDiagram
|
|
|
|
|
|
|
|
User "1" --> "*" Package
|
|
|
|
User --> UserEmailVerification
|
|
|
|
User "1" --> "*" Notification
|
|
|
|
Package "1" --> "*" Release
|
|
|
|
Package "1" --> "*" Dependency
|
|
|
|
Package "1" --> "*" Tag
|
|
|
|
Package "1" --> "*" MetaPackage : provides
|
|
|
|
Release --> MinetestVersion
|
|
|
|
Package --> License
|
|
|
|
Dependency --> Package
|
|
|
|
Dependency --> MetaPackage
|
|
|
|
MetaPackage "1" --> "*" Package
|
|
|
|
Package "1" --> "*" Screenshot
|
|
|
|
Package "1" --> "*" Thread
|
|
|
|
Thread "1" --> "*" Reply
|
|
|
|
Thread "1" --> "*" User : watchers
|
|
|
|
User "1" --> "*" Thread
|
|
|
|
User "1" --> "*" Reply
|
|
|
|
User "1" --> "*" ForumTopic
|
|
|
|
|
|
|
|
User --> "0..1" EmailPreferences
|
|
|
|
User "1" --> "*" APIToken
|
|
|
|
APIToken --> Package
|
|
|
|
```
|