Пример #1
0
    def __init__(self, **kwargs):
        region = kwargs.pop('region', None)
        if not region:
            region = RegionInfo(self, self.DefaultRegionName,
                                self.DefaultRegionEndpoint)

        if 'host' not in kwargs or kwargs['host'] is None:
            kwargs['host'] = region.endpoint

        super(CloudHSMConnection, self).__init__(**kwargs)
        self.region = region
Пример #2
0
 def connect(self,accesskey, secretkey):
     '''
         Method to establish connection to EC2.
     '''
     try:
         region = RegionInfo(name="eucalyptus", endpoint="128.111.179.130")
         self.conn = boto.connect_ec2(aws_access_key_id="UQ8GATqwbQT6v1yAvg9R3EJzZdvfPeFyDiRg",aws_secret_access_key="hGe4WCORyqEEFPRZfM7dLPqvH607IsH1a1nZw",is_secure=False,region=region,port=8773,path="/services/Eucalyptus")
 
         #self.conn = EC2Connection(accesskey, secretkey)            
     except Exception,e:
         logging.error(str(e))  
Пример #3
0
def regions():
    """
    Get all available regions for the AWS Redshift service.

    :rtype: list
    :return: A list of :class:`boto.regioninfo.RegionInfo`
    """
    from boto.redshift.layer1 import RedshiftConnection
    cls = RedshiftConnection
    return [
        RegionInfo(name='us-east-1',
                   endpoint='redshift.us-east-1.amazonaws.com',
                   connection_cls=cls),
        RegionInfo(name='us-west-2',
                   endpoint='redshift.us-west-2.amazonaws.com',
                   connection_cls=cls),
        RegionInfo(name='eu-west-1',
                   endpoint='redshift.eu-west-1.amazonaws.com',
                   connection_cls=cls),
    ]
Пример #4
0
def regions(**kw_params):
    """
    Get all available regions for the EC2 service.
    You may pass any of the arguments accepted by the VPCConnection
    object's constructor as keyword arguments and they will be
    passed along to the VPCConnection object.

    :rtype: list
    :return: A list of :class:`boto.ec2.regioninfo.RegionInfo`
    """
    regions = []
    for region_name in RegionData:
        region = RegionInfo(name=region_name,
                            endpoint=RegionData[region_name],
                            connection_cls=VPCConnection)
        regions.append(region)
    regions.append(
        RegionInfo(name='us-gov-west-1',
                   endpoint=RegionData[region_name],
                   connection_cls=VPCConnection))
    return regions
Пример #5
0
def get_con(port=9999):
    u = os.environ['RABBITMQ_USERNAME']
    p = os.environ['RABBITMQ_PASSWORD']
    region = RegionInfo('localhost')
    con = boto.ec2.autoscale.AutoScaleConnection(aws_access_key_id=u,
                                                 aws_secret_access_key=p,
                                                 is_secure=True,
                                                 port=port,
                                                 debug=3,
                                                 region=region)
    con.host = 'localhost'
    return con
Пример #6
0
    def setup(self):
        self.mock_conn = Mock(spec_set=SupportConnection)
        type(self.mock_conn).region = RegionInfo(name='us-east-1')
        self.cls = TrustedAdvisor()
        self.cls.conn = self.mock_conn

        self.mock_svc1 = Mock(spec_set=_AwsService)
        self.mock_svc2 = Mock(spec_set=_AwsService)
        self.services = {
            'SvcFoo': self.mock_svc1,
            'SvcBar': self.mock_svc2,
        }
Пример #7
0
 def test_init_region(self):
     dynamodb = DynamoDBConnection(
         aws_access_key_id='aws_access_key_id',
         aws_secret_access_key='aws_secret_access_key')
     self.assertEqual(dynamodb.region.name, 'us-east-1')
     dynamodb = DynamoDBConnection(
         region=RegionInfo(name='us-west-2',
                           endpoint='dynamodb.us-west-2.amazonaws.com'),
         aws_access_key_id='aws_access_key_id',
         aws_secret_access_key='aws_secret_access_key',
     )
     self.assertEqual(dynamodb.region.name, 'us-west-2')
Пример #8
0
 def __init__(self, queue_name, aws_access_key_id=None, aws_secret_access_key=None, region='us-east-1',
              endpoint=None, is_secure=True, port=None, incoming_message_class='boto.sqs.jsonmessage.JSONMessage'):
     self._region = RegionInfo(name=region, endpoint=endpoint) if region and endpoint else None
     self._queue_name = queue_name
     self._is_secure = is_secure
     self._port = port
     self._incoming_message_class = incoming_message_class
     self._aws_access_key_id = aws_access_key_id
     self._aws_secret_access_key = aws_secret_access_key
     self._message_class = locate(self._incoming_message_class)
     self._queue = None
     self._message_service = None
Пример #9
0
def regions():
    """
    Get all available regions for the SES service.

    :rtype: list
    :return: A list of :class:`boto.regioninfo.RegionInfo` instances
    """
    return [
        RegionInfo(name='us-east-1',
                   endpoint='email.us-east-1.amazonaws.com',
                   connection_cls=SESConnection)
    ]
Пример #10
0
    def __init__(self, fail_silently=False, *args, **kwargs):
        super(SESBackend, self).__init__(fail_silently=fail_silently, *args,
                                         **kwargs)

        self._access_key_id = settings.ACCESS_KEY
        self._access_key = settings.SECRET_KEY
        self._region = RegionInfo(
            name=settings.AWS_SES_REGION_NAME,
            endpoint=settings.AWS_SES_REGION_ENDPOINT)
        self._throttle = settings.AWS_SES_AUTO_THROTTLE

        self.connection = None
Пример #11
0
def regions():
    """
    Get all available regions for the AWS Elastic Transcoder service.

    :rtype: list
    :return: A list of :class:`boto.regioninfo.RegionInfo`
    """
    from boto.elastictranscoder.layer1 import ElasticTranscoderConnection
    cls = ElasticTranscoderConnection
    return [
        RegionInfo(name='us-east-1',
                   endpoint='elastictranscoder.us-east-1.amazonaws.com',
                   connection_cls=cls),
        RegionInfo(name='us-west-1',
                   endpoint='elastictranscoder.us-west-1.amazonaws.com',
                   connection_cls=cls),
        RegionInfo(name='us-west-2',
                   endpoint='elastictranscoder.us-west-2.amazonaws.com',
                   connection_cls=cls),
        RegionInfo(name='ap-northeast-1',
                   endpoint='elastictranscoder.ap-northeast-1.amazonaws.com',
                   connection_cls=cls),
        RegionInfo(name='ap-southeast-1',
                   endpoint='elastictranscoder.ap-southeast-1.amazonaws.com',
                   connection_cls=cls),
        RegionInfo(name='eu-west-1',
                   endpoint='elastictranscoder.eu-west-1.amazonaws.com',
                   connection_cls=cls),
    ]
Пример #12
0
def regions():
    """
    Get all available regions for the Amazon DynamoDB service.

    :rtype: list
    :return: A list of :class:`boto.regioninfo.RegionInfo`
    """
    from boto.dynamodb2.layer1 import DynamoDBConnection
    return [
        RegionInfo(name='us-east-1',
                   endpoint='dynamodb.us-east-1.amazonaws.com',
                   connection_cls=DynamoDBConnection),
        RegionInfo(name='us-gov-west-1',
                   endpoint='dynamodb.us-gov-west-1.amazonaws.com',
                   connection_cls=DynamoDBConnection),
        RegionInfo(name='us-west-1',
                   endpoint='dynamodb.us-west-1.amazonaws.com',
                   connection_cls=DynamoDBConnection),
        RegionInfo(name='us-west-2',
                   endpoint='dynamodb.us-west-2.amazonaws.com',
                   connection_cls=DynamoDBConnection),
        RegionInfo(name='eu-west-1',
                   endpoint='dynamodb.eu-west-1.amazonaws.com',
                   connection_cls=DynamoDBConnection),
        RegionInfo(name='ap-northeast-1',
                   endpoint='dynamodb.ap-northeast-1.amazonaws.com',
                   connection_cls=DynamoDBConnection),
        RegionInfo(name='ap-southeast-1',
                   endpoint='dynamodb.ap-southeast-1.amazonaws.com',
                   connection_cls=DynamoDBConnection),
        RegionInfo(name='ap-southeast-2',
                   endpoint='dynamodb.ap-southeast-2.amazonaws.com',
                   connection_cls=DynamoDBConnection),
        RegionInfo(name='sa-east-1',
                   endpoint='dynamodb.sa-east-1.amazonaws.com',
                   connection_cls=DynamoDBConnection),
        RegionInfo(name='cn-north-1',
                   endpoint='dynamodb.cn-north-1.amazonaws.com.cn',
                   connection_cls=DynamoDBConnection),
    ]
Пример #13
0
def regions():
    """
    Get all available regions for the Amazon DynamoDB service.

    :rtype: list
    :return: A list of :class:`boto.regioninfo.RegionInfo`
    """
    import boto.dynamodb.layer2
    return [
        RegionInfo(name='us-east-1',
                   endpoint='dynamodb.us-east-1.amazonaws.com',
                   connection_cls=boto.dynamodb.layer2.Layer2),
        RegionInfo(name='us-west-1',
                   endpoint='dynamodb.us-west-1.amazonaws.com',
                   connection_cls=boto.dynamodb.layer2.Layer2),
        RegionInfo(name='us-west-2',
                   endpoint='dynamodb.us-west-2.amazonaws.com',
                   connection_cls=boto.dynamodb.layer2.Layer2),
        RegionInfo(name='ap-northeast-1',
                   endpoint='dynamodb.ap-northeast-1.amazonaws.com',
                   connection_cls=boto.dynamodb.layer2.Layer2),
        RegionInfo(name='ap-southeast-1',
                   endpoint='dynamodb.ap-southeast-1.amazonaws.com',
                   connection_cls=boto.dynamodb.layer2.Layer2),
        RegionInfo(name='eu-west-1',
                   endpoint='dynamodb.eu-west-1.amazonaws.com',
                   connection_cls=boto.dynamodb.layer2.Layer2),
    ]
Пример #14
0
def regions():
    """
    Get all available regions for the SNS service.

    :rtype: list
    :return: A list of :class:`boto.regioninfo.RegionInfo` instances
    """
    return [
        RegionInfo(name='us-east-1',
                   endpoint='sns.us-east-1.amazonaws.com',
                   connection_cls=SNSConnection),
        RegionInfo(name='eu-west-1',
                   endpoint='sns.eu-west-1.amazonaws.com',
                   connection_cls=SNSConnection),
        RegionInfo(name='us-west-1',
                   endpoint='sns.us-west-1.amazonaws.com',
                   connection_cls=SNSConnection),
        RegionInfo(name='us-west-2',
                   endpoint='sns.us-west-2.amazonaws.com',
                   connection_cls=SNSConnection),
        RegionInfo(name='ap-northeast-1',
                   endpoint='sns.ap-northeast-1.amazonaws.com',
                   connection_cls=SNSConnection),
        RegionInfo(name='ap-southeast-1',
                   endpoint='sns.ap-southeast-1.amazonaws.com',
                   connection_cls=SNSConnection),
    ]
Пример #15
0
        def _euca_connection(_clchost, _port, _access_id, _secret_key, _token,
                             _conn_type):
            region = RegionInfo(name='eucalyptus', endpoint=_clchost)
            path = '/services/Eucalyptus'
            conn_class = EC2Connection
            api_version = '2012-12-01'

            # Configure based on connection type
            if conn_type == 'autoscale':
                api_version = '2011-01-01'
                conn_class = boto.ec2.autoscale.AutoScaleConnection
                path = '/services/AutoScaling'
            elif conn_type == 'cloudwatch':
                path = '/services/CloudWatch'
                conn_class = boto.ec2.cloudwatch.CloudWatchConnection
            elif conn_type == 'elb':
                path = '/services/LoadBalancing'
                conn_class = boto.ec2.elb.ELBConnection
            elif conn_type == 'iam':
                path = '/services/Euare'
                conn_class = boto.iam.IAMConnection

            if conn_type == 'sts':
                conn = EucaAuthenticator(_clchost, _port)
            elif conn_type != 'iam':
                conn = conn_class(_access_id,
                                  _secret_key,
                                  region=region,
                                  port=_port,
                                  path=path,
                                  is_secure=True,
                                  security_token=_token)
            else:
                conn = conn_class(_access_id,
                                  _secret_key,
                                  host=_clchost,
                                  port=_port,
                                  path=path,
                                  is_secure=True,
                                  security_token=_token)

            # AutoScaling service needs additional auth info
            if conn_type == 'autoscale':
                conn.auth_region_name = 'Eucalyptus'

            if conn_type != 'sts':  # this is the only non-boto connection
                setattr(conn, 'APIVersion', api_version)
                conn.https_validate_certificates = False
                conn.http_connection_kwargs['timeout'] = 30
                # uncomment to enable boto request logger. Use only for development
                #conn.set_request_hook(RequestLogger())
            return conn
Пример #16
0
def regions():
    """
    Get all available regions for the Amazon Support service.

    :rtype: list
    :return: A list of :class:`boto.regioninfo.RegionInfo`
    """
    from boto.support.layer1 import SupportConnection
    return [
        RegionInfo(name='us-east-1',
                   endpoint='support.us-east-1.amazonaws.com',
                   connection_cls=SupportConnection),
    ]
Пример #17
0
 def __init__(self, aws_access_key_id=None, aws_secret_access_key=None,
              is_secure=True, port=None, proxy=None, proxy_port=None,
              proxy_user=None, proxy_pass=None, debug=0,
              https_connection_factory=None, region=None, path='/'):
     if not region:
         region = RegionInfo(self, self.DefaultRegionName,
                             self.DefaultRegionEndpoint)
     self.region = region
     AWSAuthConnection.__init__(self, self.region.endpoint,
                                aws_access_key_id, aws_secret_access_key,
                                is_secure, port, proxy, proxy_port,
                                proxy_user, proxy_pass, debug,
                                https_connection_factory, path)
Пример #18
0
    def __init__(self,
                 aws_access_key_id=None,
                 aws_secret_access_key=None,
                 is_secure=True,
                 port=None,
                 proxy=None,
                 proxy_port=None,
                 proxy_user=None,
                 proxy_pass=None,
                 debug=0,
                 https_connection_factory=None,
                 region=None,
                 path='/',
                 security_token=None,
                 validate_certs=True,
                 profile_name=None,
                 aws_sudo_id=None):
        """
        Init method to create a new connection to EC2 Monitoring Service.

        B{Note:} The host argument is overridden by the host specified in the
        boto configuration file.
        """
        if not region:
            region = RegionInfo(self, self.DefaultRegionName,
                                self.DefaultRegionEndpoint)
        self.region = region

        # Ugly hack to get around both a bug in Python and a
        # misconfigured SSL cert for the eu-west-1 endpoint
        if self.region.name == 'eu-west-1':
            validate_certs = False

        super(CloudWatchConnection,
              self).__init__(aws_access_key_id,
                             aws_secret_access_key,
                             is_secure,
                             port,
                             proxy,
                             proxy_port,
                             proxy_user,
                             proxy_pass,
                             self.region.endpoint,
                             debug,
                             https_connection_factory,
                             path,
                             security_token,
                             validate_certs=validate_certs,
                             profile_name=profile_name)
        self.aws_sudo_id = aws_sudo_id
Пример #19
0
    def __init__(self, virtapi, read_only=False):
        super(EC2Driver, self).__init__(virtapi)
        self.host_status_base = {
            'vcpus': VCPUS,
            'memory_mb': MEMORY_IN_MBS,
            'local_gb': DISK_IN_GB,
            'vcpus_used': 0,
            'memory_mb_used': 0,
            'local_gb_used': 100000000000,
            'hypervisor_type': 'EC2',
            'hypervisor_version': '1.0',
            'hypervisor_hostname': CONF.host,
            'cpu_info': {},
            'disk_available_least': 500000000000,
        }

        self._mounts = {}
        self._interfaces = {}

        self.creds = get_nova_creds()
        self.nova = client.Client(**self.creds)
        region = RegionInfo(name=aws_region, endpoint=aws_endpoint)
        self.ec2_conn = ec2.EC2Connection(aws_access_key_id=CONF.ec2driver.ec2_access_key_id,
                                          aws_secret_access_key=CONF.ec2driver.ec2_secret_access_key,
                                          host=host,
                                          port=port,
                                          region=region,
                                          is_secure=secure)

        self.cloudwatch_conn = ec2.cloudwatch.connect_to_region(
            aws_region, aws_access_key_id=CONF.ec2driver.ec2_access_key_id, aws_secret_access_key=CONF.ec2driver.ec2_secret_access_key)

        self.security_group_lock = Lock()

        self.instance_rule_refresher = InstanceRuleRefresher(
            GroupRuleRefresher(
                ec2_connection=self.ec2_conn,
                openstack_rule_service=OpenstackRuleService(
                    group_service=OpenstackGroupService(self.nova.security_groups),
                    openstack_rule_transformer=OpenstackRuleTransformer()
                ),
                ec2_rule_service=EC2RuleService(
                    ec2_connection=self.ec2_conn,
                    ec2_rule_transformer=EC2RuleTransformer(self.ec2_conn)
                )
            )
        )

        if not '_EC2_NODES' in globals():
            set_nodes([CONF.host])
Пример #20
0
    def __init__(self, fail_silently=False, aws_access_key=None,
                 aws_secret_key=None, aws_region_name=None,
                 aws_region_endpoint=None, aws_auto_throttle=None,
                 **kwargs):

        super(SESBackend, self).__init__(fail_silently=fail_silently, **kwargs)
        self._access_key_id = aws_access_key or settings.AWS_SES_ACCESS_KEY_ID
        self._access_key = aws_secret_key or settings.AWS_SES_SECRET_ACCESS_KEY
        self._region = RegionInfo(
            name=aws_region_name or settings.AWS_SES_REGION_NAME,
            endpoint=aws_region_endpoint or settings.AWS_SES_REGION_ENDPOINT)
        self._throttle = aws_auto_throttle or settings.AWS_SES_AUTO_THROTTLE

        self.connection = None
Пример #21
0
def get_phantom_con():
    u = os.environ['EC2_ACCESS_KEY']
    p = os.environ['EC2_SECRET_KEY']
    url = os.environ['PHANTOM_URL']
    uparts = urlparse.urlparse(url)
    is_secure = uparts.scheme == 'https'
    region = RegionInfo(uparts.hostname)
    con = boto.ec2.autoscale.AutoScaleConnection(aws_access_key_id=u,
                                                 aws_secret_access_key=p,
                                                 is_secure=is_secure,
                                                 port=uparts.port,
                                                 region=region)
    con.host = uparts.hostname
    return con
Пример #22
0
def send_email_ses(config, sender, subject, message, recipients, image_png):
    import boto.ses
    from boto.regioninfo import RegionInfo

    region = config.get('email', 'region', 'us-east-1')
    region_url = config.get('email', 'region', 'email.us-east-1.amazonaws.com')
    con = boto.ses.connect_to_region(
        region=RegionInfo(None, region, region_url),
        aws_access_key_id=config.get('email', 'AWS_ACCESS_KEY', None),
        aws_secret_access_key=config.get('email', 'AWS_SECRET_KEY', None))
    msg_root = generate_email(sender, subject, message, recipients, image_png)
    con.send_raw_email(msg_root.as_string(),
                       source=msg_root['From'],
                       destinations=msg_root['To'])
Пример #23
0
 def test_bad_pw(self):
     region = RegionInfo(endpoint=self.hostname)
     con = boto.ec2.autoscale.AutoScaleConnection(
         aws_access_key_id=self.username,
         aws_secret_access_key="XXX",
         is_secure=False,
         port=self.port,
         debug=3,
         region=region)
     try:
         x = con.get_all_launch_configurations()
         self.assertTrue(False, "login should have failed")
     except BotoServerError, ex:
         pass
Пример #24
0
    def __init__(self, **kwargs):
        region = kwargs.pop('region', None)
        if not region:
            region = RegionInfo(self, self.DefaultRegionName,
                                self.DefaultRegionEndpoint)

        if 'host' not in kwargs or kwargs['host'] is None:
            kwargs['host'] = region.endpoint

        sign_request = kwargs.pop('sign_request', False)
        self.sign_request = sign_request

        super(CloudSearchConnection, self).__init__(**kwargs)
        self.region = region
Пример #25
0
    def __init__(self, fail_silently=False, *args, **kwargs):
        super(SESBackend, self).__init__(fail_silently=fail_silently, *args,
                                         **kwargs)

        self._access_key_id = getattr(settings, 'AWS_ACCESS_KEY_ID', None)
        self._access_key = getattr(settings, 'AWS_SECRET_ACCESS_KEY', None)
        self._region = RegionInfo(
            name=getattr(settings, 'AWS_SES_REGION_NAME',
                SESConnection.DefaultRegionName),
            endpoint=getattr(settings, 'AWS_SES_REGION_ENDPOINT',
                SESConnection.DefaultRegionEndpoint))
        self._throttle = getattr(settings, 'AWS_SES_AUTO_THROTTLE', 0.5)

        self.connection = None
Пример #26
0
def regions():
    """
    Get all available regions for the CloudWatch service.

    :rtype: list
    :return: A list of :class:`boto.RegionInfo` instances
    """
    regions = []
    for region_name in RegionData:
        region = RegionInfo(name=region_name,
                            endpoint=RegionData[region_name],
                            connection_cls=CloudWatchConnection)
        regions.append(region)
    return regions
Пример #27
0
 def __init__(self, **kwargs):
     region = kwargs.get('region')
     if not region:
         region = RegionInfo(self, self.DefaultRegionName,
                             self.DefaultRegionEndpoint)
     else:
         del kwargs['region']
     if kwargs.get('host', None) is None:
         raise ValueError(
             'The argument, host, must be provided when creating a '
             'CloudSearchDomainConnection because its methods require the '
             'specific domain\'s endpoint in order to successfully make '
             'requests to that CloudSearch Domain.')
     super(CloudSearchDomainConnection, self).__init__(**kwargs)
     self.region = region
Пример #28
0
def sendEmailViaSES(subject, body, recipients, awsRegion, sesEndpoint,
                    senderAddress, awsAccessKeyId, awsSecretAccessKey):
    """
  Send an email via AWS SES.

  :param subject: Email subject header
  :type subject: string
  :param body: Email body
  :type body: string
  :param recipients: Email recipient(s)
  :type recipients: sequence of strings
  :param awsRegion: AWS region for error report email
  :type awsRegion: string
  :param sesEndpoint: AWS/SES endpoint for error report email
  :type sesEndpoint: string
  :param senderAddress: Sender address for error report email
  :type senderAddress: string
  :param awsAccessKeyId: AWS access key ID for error report email
  :type awsAccessKeyId: string
  :param awsSecretAccessKey: AWS secret access key for error report email
  :type awsSecretAccessKey: string
  """
    try:
        regionInfo = RegionInfo(connection=None,
                                name=awsRegion,
                                endpoint=sesEndpoint,
                                connection_cls=None)

        conn = boto.ses.SESConnection(region=regionInfo,
                                      aws_access_key_id=awsAccessKeyId,
                                      aws_secret_access_key=awsSecretAccessKey)

        conn.send_email(source=senderAddress,
                        subject=subject,
                        body=body,
                        to_addresses=recipients)
        g_log.info("Called boto.ses.SESConnection.send_email. This does not "
                   "necessarily mean that the email was successfully sent.")

    except BotoServerError:
        g_log.exception("Failed to send email via AWS/SES. subject='%s'" %
                        (subject, ))
        raise
    except socket.gaierror:
        g_log.exception(
            "Failed to connect to AWS/SES. Region=%s. SesEndpoint=%s" %
            (awsRegion, sesEndpoint))
        raise
Пример #29
0
def dashboard(request):
    """
    Graph SES send statistics over time.
    """
    cache_key = 'vhash:django_ses_stats'
    cached_view = cache.get(cache_key)
    if cached_view:
        return cached_view

    region = RegionInfo(
        name=settings.AWS_SES_REGION_NAME,
        endpoint=settings.AWS_SES_REGION_ENDPOINT)

    ses_conn = SESConnection(
        aws_access_key_id=settings.ACCESS_KEY,
        aws_secret_access_key=settings.SECRET_KEY,
        region=region)

    quota_dict = ses_conn.get_send_quota()
    verified_emails_dict = ses_conn.list_verified_email_addresses()
    stats = ses_conn.get_send_statistics()

    quota = quota_parse(quota_dict)
    verified_emails = emails_parse(verified_emails_dict)
    ordered_data = stats_to_list(stats)
    summary = sum_stats(ordered_data)

    extra_context = {
        'title': 'SES Statistics',
        'datapoints': ordered_data,
        '24hour_quota': quota['Max24HourSend'],
        '24hour_sent': quota['SentLast24Hours'],
        '24hour_remaining': float(quota['Max24HourSend']) -
                            float(quota['SentLast24Hours']),
        'persecond_rate': quota['MaxSendRate'],
        'verified_emails': verified_emails,
        'summary': summary,
        'access_key': ses_conn.gs_access_key_id,
        'local_time': True if pytz else False,
    }

    response = render_to_response(
        'django_ses/send_stats.html',
        extra_context,
        context_instance=RequestContext(request))

    cache.set(cache_key, response, 60 * 15)  # Cache for 15 minutes
    return response
Пример #30
0
    def __init__(self,
                 aws_access_key_id=None,
                 aws_secret_access_key=None,
                 is_secure=True,
                 port=None,
                 proxy=None,
                 proxy_port=None,
                 proxy_user=None,
                 proxy_pass=None,
                 debug=0,
                 https_connection_factory=None,
                 region=None,
                 path='/',
                 security_token=None,
                 validate_certs=True,
                 profile_name=None,
                 use_block_device_types=False):
        """
        Init method to create a new connection to the AutoScaling service.

        B{Note:} The host argument is overridden by the host specified in the
                 boto configuration file.


        """
        if not region:
            region = RegionInfo(self, self.DefaultRegionName,
                                self.DefaultRegionEndpoint,
                                AutoScaleConnection)
        self.region = region
        self.use_block_device_types = use_block_device_types
        super(AutoScaleConnection,
              self).__init__(aws_access_key_id,
                             aws_secret_access_key,
                             is_secure,
                             port,
                             proxy,
                             proxy_port,
                             proxy_user,
                             proxy_pass,
                             self.region.endpoint,
                             debug,
                             https_connection_factory,
                             path=path,
                             security_token=security_token,
                             validate_certs=validate_certs,
                             profile_name=profile_name)