Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

local hosted, inmemory Amazon DynamoDB emulator.

README.md

FakeDynamo Build Status

local hosted, inmemory Amazon DynamoDB emulator.

Versions

Amazon DynamoDB API version FakeDynamo gem version
2012-08-10 0.2.5
2011-12-05 0.1.3

Caveats

  • ConsumedCapacityUnits value will be 1 always.

Usage

requires ruby >= 1.9

gem install fake_dynamo --version 0.2.5

fake_dynamo --port 4567

send a DELETE request to reset the database. eg

curl -X DELETE http://localhost:4567

Clients

AWS.config(:use_ssl => false,
           :dynamo_db_endpoint => 'localhost',
           :dynamo_db_port => 4567,
           :access_key_id => "xxx",
           :secret_access_key => "xxx")
 AWS.config.update({apiVersion:      "2012-08-10",
                    sslEnabled:      false,
                    endpoint:        "localhost:4567",
                    accessKeyId:     "xxx",
                    secretAccessKey: "xxx",
                    region:          "xxx"});
AWSCredentials credentials = new BasicAWSCredentials("xxx", "xxx");
AmazonDynamoDB client = new AmazonDynamoDBClient(credentials);
client.setEndpoint("http://localhost:4567");

please open a pull request with your configuration if you are using fake_dynamo with clients other than the ones mentioned above.

Storage

fake_dynamo stores the write operations (request that changes the data) in /usr/local/var/fake_dynamo/db.fdb and replays it before starting the server. Because of the way fake_dynamo stores the data, file size tend to grow by time. so fake_dynamo will compact the database during start up if the file size is greater than 100mb. you can manually compact it by passing --compact flag.

Something went wrong with that request. Please try again.