sumo_db_pgsql
About
This is the PostgreSQL adapter for sumo_db.
PosgreSQL
Install PostgreSQL
To install PostgreSQL please follow the instructions in this link: Installing PostgreSQL.
Getting Started
To start using sumo_db with this PostgreSQL adapter sumo_db_pgsql is pretty easy, you just have to follow these
steps:
-
Add
sumo_dbandsumo_db_pgsqlas dependencies in your project.Using Rebar3:
{deps, [
{sumo_db_pgsql, "0.1.1"}
]}. -
You need at least one doc/entity, let's use sumo_test_people_pgsql as example.
NOTE: if you use this entity, you'll need to include
mixerto the dependencies list -
Provide the configuration file, e.g.: test.config.
-
Now you can run your app and start using
sumofrom there.
Running sumo from Erlang console
Start the Erlang console, adding the path to your beams and config file
Within the console:
12:02:00.250 [info] Application lager started on node nonode@nohost
12:02:00.250 [info] Application crypto started on node nonode@nohost
12:02:00.251 [info] Application asn1 started on node nonode@nohost
12:02:00.251 [info] Application public_key started on node nonode@nohost
12:02:00.251 [info] Application ssl started on node nonode@nohost
12:02:00.252 [info] Application epgsql started on node nonode@nohost
12:02:00.256 [info] Application sasl started on node nonode@nohost
12:02:00.256 [info] Creating wpool ETS table
12:02:00.256 [info] Application worker_pool started on node nonode@nohost
12:02:00.256 [info] Application quickrand started on node nonode@nohost
12:02:00.256 [info] Application uuid started on node nonode@nohost
12:02:00.337 [info] Application sumo_db started on node nonode@nohost
12:02:00.341 [info] Application sumo_db_pgsql started on node nonode@nohost
{ok,[syntax_tools,compiler,goldrush,lager,crypto,asn1,
public_key,ssl,epgsql,sasl,worker_pool,quickrand,uuid,
sumo_db,sumo_db_pgsql]}
% from here you can start using sumo
> sumo:find_all(people).
[]
Running Tests
A PostgreSQL instance is needed to run the tests. If Docker (and Docker Compose) is an option, a PostgreSQL server
can be run executing the following commands (assuming the current/working directory is the project's root):
After this is completed, a similar result should be displayed:
Name Command State Ports
---------------------------------------------------------------------------------
sumodbpgsql_db_1 docker-entrypoint.sh postgres Up 0.0.0.0:5432->5432/tcp
If Docker (and Docker Compose) is not an alternative, install PostgreSQL (refer to Install PostgreSQL) and make
sure to:
- Create a
postgresuser (withpostgresas password). - Create a test
sumo_testdatabase.
NOTE: Alternatively, use PostgreSQL defaults and make sure to modify/update
test/test.configaccordingly.
Then run:
Contact Us
If you find any bugs or have a problem while using this library, please open an issue in this repo (or a pull request :)).