/models

PlaceOS entity models.

Primary LanguageCrystalOtherNOASSERTION

PlaceOS Models

CI Documentation Changelog

The database models for PlaceOS in crystal.

PlaceOS is a distributed application, with many concurrent event sources that require persistence. We use RethinkDB to unify our database and event bus, giving us a consistent interface to state and events across the system.

Configuration

Environment

Key Description Default
PLACE_MAX_VERSIONS Number of versions to keep of versioned models 20
PG_HOST Postgresql host "localhost"
PG_PORT Postgresql port 5432
PG_DB Database name or PG_DATABASE "test"
PG_USER Database user "postgres"
PG_PASSWORD Database password ""
PG_QUERY Query string, that can be used to configure pooling ""
PG_LOCK_TIMEOUT Timeout on retrying Advisory lock in seconds 5
PG_DATABASE_URL Or provide a Database DSN

Testing

# prune docker images if you have new migrations that need to run
# since the last time migrations image was built
docker system prune --all

# builds migrations and runs tests in a containerised env
./test

Contributing

See CONTRIBUTING.md.