Example #1
0
def set_region(region_name):
    try:
        cbi = ConnectionBorg()
        cbi.set_region(region_name)
    except Exception, e:
        print "Problem changing regions for dynamodb connection"
        raise
Example #2
0
def set_region(region_name):
    try:
        cbi = ConnectionBorg()
        cbi.set_region(region_name)
    except Exception, e:
        print "Problem changing regions for dynamodb connection"
        raise
Example #3
0
 def handle(self, *args, **options):
     conn = ConnectionBorg()
     conn.set_credentials(aws_access_key_id=settings.DYNAMODB_SESSIONS_AWS_ACCESS_KEY_ID,
         aws_secret_access_key=settings.DYNAMODB_SESSIONS_AWS_SECRET_ACCESS_KEY,)
     try:
         conn.create_table(Contributor, 10, 10, wait_for_active=False)
         self.stdout.write("Contributor table created")
     except DynamoDBResponseError, er:
         print(er)
Example #4
0
def create_dynamoDB():
    conn = ConnectionBorg()
    conn.set_region( '%s' % settings.DATABASES["default"]["REGION"] ) 

    obj_click = Click()
    try:
        conn.create_table(obj_click, read_units=settings.DATABASES["default"]["READ_UNITS"], write_units=settings.DATABASES["default"]["WRITE_UNITS"], wait_for_active=False)
    except Exception, args:
        print args
Example #5
0
    def test_borgness(self):
        aws_access_key_id = "foo"
        aws_secret_access_key = "bar"

        borg1 = ConnectionBorg()
        borg2 = ConnectionBorg()

        borg1.set_credentials(aws_access_key_id, aws_secret_access_key)

        self.assertEqual(borg1._aws_access_key_id, aws_access_key_id)
        self.assertEqual(borg1._aws_secret_access_key, aws_secret_access_key)

        self.assertEqual(borg2._aws_access_key_id, aws_access_key_id)
        self.assertEqual(borg2._aws_secret_access_key, aws_secret_access_key)
Example #6
0
    def test_get_connection(self, m_boto):
        CONNECTION = "JJG"
        REGION = "La bas, tout est neuf et tout est sauvage."
        KEY_ID = "foo"
        KEY_VALUE = "bar"

        m_boto.connect_dynamodb.return_value = "JJG"

        borg1 = ConnectionBorg()
        borg2 = ConnectionBorg()

        borg1._region = REGION
        borg1._aws_access_key_id = KEY_ID
        borg1._aws_secret_access_key = KEY_VALUE

        self.assertIsNone(borg1._connection)
        self.assertEqual(CONNECTION, borg2._get_connection())
        self.assertEqual(CONNECTION, borg1._get_connection())
        self.assertEqual(CONNECTION, borg1._connection)

        m_boto.connect_dynamodb.assert_called_once_with(
                aws_access_key_id=KEY_ID,
                aws_secret_access_key=KEY_VALUE,
                region=REGION,
                )
Example #7
0
    def test_set_credentials(self, m_boto):
        # Make sure internal state is set and shared
        m_get_table = m_boto.connect_dynamodb.return_value.get_table

        aws_access_key_id = "foo"
        aws_secret_access_key = "bar"
        table_name = "foo"

        borg1 = ConnectionBorg()
        borg2 = ConnectionBorg()

        borg1.set_credentials(aws_access_key_id, aws_secret_access_key)

        self.assertIs(borg1._aws_access_key_id ,aws_access_key_id)
        self.assertIs(borg2._aws_access_key_id ,aws_access_key_id)

        self.assertIs(borg1._aws_secret_access_key ,aws_secret_access_key)
        self.assertIs(borg2._aws_secret_access_key ,aws_secret_access_key)
Example #8
0
    def test_set_region_valid(self, m_boto):
        # Make sure internal state is set and shared
        m_regions = [
            mocked_region('us-east-1'),
            mocked_region('eu-west-1'),
        ]

        m_boto.dynamodb.regions.return_value = m_regions

        borg1 = ConnectionBorg()
        borg2 = ConnectionBorg()

        self.assertIs(None, borg1._region)
        self.assertIs(None, borg2._region)

        borg1.set_region("eu-west-1")

        self.assertIs(m_regions[1], borg1._region)
        self.assertIs(m_regions[1], borg2._region)
Example #9
0
    def test_get_table_default(self, m_boto):
        m_get_table = m_boto.connect_dynamodb.return_value.get_table

        aws_access_key_id = "foo"
        aws_secret_access_key = "bar"
        table_name = "foo"

        borg1 = ConnectionBorg()

        borg1._aws_access_key_id = aws_access_key_id
        borg1._aws_secret_access_key = aws_secret_access_key

        ConnectionBorg().get_table(table_name)
        m_get_table.assert_called_with(table_name)

        m_boto.connect_dynamodb.assert_called_with(
            aws_access_key_id=aws_access_key_id,
            aws_secret_access_key=aws_secret_access_key,
            region=None,
        )
Example #10
0
    def test_get_table_eu_region(self, m_boto):
        m_get_table = m_boto.connect_dynamodb.return_value.get_table
        m_region = mocked_region('eu-west-1')

        aws_access_key_id = "foo"
        aws_secret_access_key = "bar"
        table_name = "foo"

        borg1 = ConnectionBorg()

        borg1._region = m_region
        borg1._aws_access_key_id = aws_access_key_id
        borg1._aws_secret_access_key = aws_secret_access_key

        ConnectionBorg().get_table(table_name)
        m_get_table.assert_called_with(table_name)

        m_boto.connect_dynamodb.assert_called_with(
            aws_access_key_id=aws_access_key_id,
            aws_secret_access_key=aws_secret_access_key,
            region=m_region,
        )
Example #11
0
import sys, re

from dynamodb_mapper.model import ConnectionBorg
from boto.dynamodb.exceptions import DynamoDBKeyNotFoundError

import settings
from digram import Digram


cb = ConnectionBorg()
cb.set_region('eu-west-1')
cb.set_credentials(settings.aws_access_key_id, settings.aws_secret_access_key)

for line in open(sys.argv[1], 'r'):
    # find words
    ws = filter(lambda match: match != '',
        re.findall(r"$| ([a-zA-Z-']+)", line.encode('utf-8')))
    # turn into lower case words
    ws = map(lambda word: word.lower(), ws)

    # digrams please
    digrams = reduce(lambda dis, w: dis + [(dis[-1][1], w)], ws, [('','')])[2:]
    print "found digrams: " + str(digrams)

    for di in digrams:
        try:
            d_rec = Digram.get(di[0], di[1])
        except DynamoDBKeyNotFoundError:
            d_rec = Digram()
            d_rec.w1 = di[0]
            d_rec.w2 = di[1]
Example #12
0
from dynamodb_mapper.model import DynamoDBModel
from dynamodb_mapper.model import ConnectionBorg
from django.db import models
#from settings import MEDIA_ROOT
from boto.dynamodb import condition
from django.db.models.signals import post_save
from django.contrib.auth.models import User


conn = ConnectionBorg()
conn.set_region('us-west-2')

class Books(DynamoDBModel):
    __table__ = u"Books"
    __hash_key__ = u"bookID"
    __schema__ = {
        u"bookID": unicode,
        u"title": unicode,
    }
    def __unicode__(self):
        return self.title
    def num_quest(self):
        return len(list(Questions.scan({"bookID":condition.EQ(self.bookID)})))
       
class Questions(DynamoDBModel):
    __table__ = u"Questions"
    __hash_key__ = u"questionID"
    __schema__ = {
        u"questionID": unicode,
        u"bookID": unicode,
        u"question": unicode,
Example #13
0
def createTables(request):
    conn = ConnectionBorg()
    conn.create_table(models.Campground, 1, 1, wait_for_active=True)
    #conn.create_table(models.Park, 1, 1, wait_for_active=True)
    #conn.create_table(models.Review, 1, 1, wait_for_active=True)
    return HttpResponse("Tables created")
Example #14
0
	__hash_key__=u"episode"
	__range_key__=u"map"
	__schema__={
		u"episode": int,
		u"map": int,
		u"name"ll
        : unicode,
		u"cheats": set,
		}
	__defaults__={
		"cheats": set([u"Konami"]),
		}


if __name__ == "__main__":
    conn = ConnectionBorg()
    conn.create_table(DoomMap, 10, 10, wait_for_active=True)
    
    e1m1 = DoomMap()

    e1m1.episode = 1
    e1m1.map = 1
    e1m1.name = u"Hangar"
    e1m1.cheats = set([u"idkfa", u"iddqd", u"idclip"])
    e1m1.save()

    # Later on, retrieve that same object from the DB...
    e1m1 = DoomMap.get(1, 1)    
    
    # query all maps of episode 1
    e1_maps = DoomMap.query(1)
Example #15
0
def createTables(request):
    conn = ConnectionBorg()
    conn.create_table(models.Campground, 1, 1, wait_for_active=True)
    #conn.create_table(models.Park, 1, 1, wait_for_active=True)
    #conn.create_table(models.Review, 1, 1, wait_for_active=True)
    return HttpResponse("Tables created")
 def __init__(self, **kwargs):
     conn = boto.connect_dynamodb()
     super(EC2LoadBalancer, self).__init__(**kwargs)
     if self.__table__ not in conn.list_tables():
         conn = ConnectionBorg()
         conn.create_table(self, 10, 10, wait_for_active=True)
Example #17
0
import boto
import dynamodb_mapper
from dynamodb_mapper.model import DynamoDBModel
from dynamodb_mapper.model import ConnectionBorg
from ddbmock import config
from ddbmock import connect_boto_patch
from db_models import TestMap

# mock
config.STORAGE_ENGINE_NAME = 'sqlite'                   # switch to sqlite backend
config.STORAGE_SQLITE_FILE = '/tmp/pyrest.sqlite'       # define the database path. defaults to 'dynamo.db'
db = connect_boto_patch()                               # Wire-up boto and ddbmock together

# connect
conn = ConnectionBorg()

# create table
conn.create_table(TestMap, 10, 10, False)
Example #18
0
import requests
from dynamodb_mapper.model import DynamoDBModel
from dynamodb_mapper.model import ConnectionBorg


class LinkMap(DynamoDBModel):
    __table__ = "links"
    __hash_key__ = "from_link"
    __schema__ = {
        "from_link": unicode,
        "to_link": unicode
    }

try:
    conn = ConnectionBorg()
    conn.create_table(LinkMap, 5, 5, wait_for_active=True)
except:
    pass


app = Flask(__name__)


@app.route('/', methods=['POST', 'GET'])
def hello_world():
    if request.method == 'POST':
        link = request.form['link']
        try:
            resolved_link = requests.get(link)
            resolved_link.raise_for_status()