contentdb/README.md

64 lines
1.6 KiB
Markdown
Raw Normal View History

2018-03-19 19:25:13 +01:00
# Content Database
[![Build status](https://gitlab.com/minetest/contentdb/badges/master/pipeline.svg)](https://gitlab.com/minetest/contentdb/pipelines)
2018-03-19 19:25:13 +01:00
Content database for Minetest mods, games, and more.\
2019-01-09 23:35:11 +01:00
Developed by rubenwardy, license GPLv3.0+.
## 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
# if sqlite
2019-11-12 23:36:30 +01:00
python utils/setup.py -t
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
# Enter docker
docker exec -it contentdb_app_1 bash
# 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
```
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
```