Astra

An elixir plugin for interacting with DataStax Astra or any stargate.io fronted storage!

Currently supports

Installation

The package can be installed by adding astra to your list of dependencies in mix.exs:

def deps do
  [
    {:astra, "~> 0.1.0"}
  ]
end

To connect to Astra add something like the following to your config.exs.

For username and password authentication:

config :astra,
  id: System.get_env("ASTRA_ID"), #this is your astra cluster id
  region: System.get_env("ASTRA_REGION"), #this is the region where your astra cluster is hosted
  username: System.get_env("ASTRA_USERNAME"),
  password: System.get_env("ASTRA_PASSWORD")

For static application tokens:

config :astra,
  id: System.get_env("ASTRA_ID"), #this is your astra cluster id
  region: System.get_env("ASTRA_REGION"), #this is the region where your astra cluster is hosted
  application_token: System.get_env("ASTRA_APPLICATION_TOKEN") # this is and application security token for your database

For non-astra stargate backends replace id and region in the config with the stargate host, example:

config :astra,
  host: my.stargate.endpoint,
  username: System.get_env("ASTRA_USERNAME"),
  password: System.get_env("ASTRA_PASSWORD")