Use the PostgreSQL-based EventStore with Commanded.
MIT License
The package can be installed from hex as follows.
-
Add
commanded_eventstore_adapter
to your list of dependencies inmix.exs
:def deps do [{:commanded_eventstore_adapter, "~> 0.6"}] end
-
Include
:eventstore
in the list of extra applications to start inmix.exs
:def application do [ extra_applications: [ :logger, :eventstore, ], ] end
-
Configure Commanded to use the
Commanded.EventStore.Adapters.EventStore
adapter:config :commanded, event_store_adapter: Commanded.EventStore.Adapters.EventStore
-
Configure the
eventstore
in each environment's mix config file (e.g.config/dev.exs
), specifying usage of the included JSON serializer:config :eventstore, EventStore.Storage, serializer: Commanded.Serialization.JsonSerializer, username: "postgres", password: "postgres", database: "eventstore_dev", hostname: "localhost", pool_size: 10
-
Create the
eventstore
database and tables using themix
task:$ mix do event_store.create, event_store.init