Index: tools/telemetry/third_party/gsutil/third_party/boto/boto/rds/dbinstance.py |
diff --git a/tools/telemetry/third_party/gsutil/third_party/boto/boto/rds/dbinstance.py b/tools/telemetry/third_party/gsutil/third_party/boto/boto/rds/dbinstance.py |
deleted file mode 100644 |
index 6a6385103d3ab4fa3f4e7759af9ef993e9b9b80e..0000000000000000000000000000000000000000 |
--- a/tools/telemetry/third_party/gsutil/third_party/boto/boto/rds/dbinstance.py |
+++ /dev/null |
@@ -1,416 +0,0 @@ |
-# Copyright (c) 2006-2009 Mitch Garnaat http://garnaat.org/ |
-# |
-# Permission is hereby granted, free of charge, to any person obtaining a |
-# copy of this software and associated documentation files (the |
-# "Software"), to deal in the Software without restriction, including |
-# without limitation the rights to use, copy, modify, merge, publish, dis- |
-# tribute, sublicense, and/or sell copies of the Software, and to permit |
-# persons to whom the Software is furnished to do so, subject to the fol- |
-# lowing conditions: |
-# |
-# The above copyright notice and this permission notice shall be included |
-# in all copies or substantial portions of the Software. |
-# |
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS |
-# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- |
-# ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT |
-# SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, |
-# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS |
-# IN THE SOFTWARE. |
- |
-from boto.rds.dbsecuritygroup import DBSecurityGroup |
-from boto.rds.parametergroup import ParameterGroup |
-from boto.rds.statusinfo import StatusInfo |
-from boto.rds.dbsubnetgroup import DBSubnetGroup |
-from boto.rds.vpcsecuritygroupmembership import VPCSecurityGroupMembership |
-from boto.resultset import ResultSet |
- |
- |
-class DBInstance(object): |
- """ |
- Represents a RDS DBInstance |
- |
- Properties reference available from the AWS documentation at |
- http://goo.gl/sC2Kn |
- |
- :ivar connection: connection |
- :ivar id: The name and identifier of the DBInstance |
- :ivar create_time: The date and time of creation |
- :ivar engine: The database engine being used |
- :ivar status: The status of the database in a string. e.g. "available" |
- :ivar allocated_storage: The size of the disk in gigabytes (int). |
- :ivar auto_minor_version_upgrade: Indicates that minor version patches |
- are applied automatically. |
- :ivar endpoint: A tuple that describes the hostname and port of |
- the instance. This is only available when the database is |
- in status "available". |
- :ivar instance_class: Contains the name of the compute and memory |
- capacity class of the DB Instance. |
- :ivar master_username: The username that is set as master username |
- at creation time. |
- :ivar parameter_groups: Provides the list of DB Parameter Groups |
- applied to this DB Instance. |
- :ivar security_groups: Provides List of DB Security Group elements |
- containing only DBSecurityGroup.Name and DBSecurityGroup.Status |
- subelements. |
- :ivar availability_zone: Specifies the name of the Availability Zone |
- the DB Instance is located in. |
- :ivar backup_retention_period: Specifies the number of days for |
- which automatic DB Snapshots are retained. |
- :ivar preferred_backup_window: Specifies the daily time range during |
- which automated backups are created if automated backups are |
- enabled, as determined by the backup_retention_period. |
- :ivar preferred_maintenance_window: Specifies the weekly time |
- range (in UTC) during which system maintenance can occur. (string) |
- :ivar latest_restorable_time: Specifies the latest time to which |
- a database can be restored with point-in-time restore. (string) |
- :ivar multi_az: Boolean that specifies if the DB Instance is a |
- Multi-AZ deployment. |
- :ivar iops: The current number of provisioned IOPS for the DB Instance. |
- Can be None if this is a standard instance. |
- :ivar vpc_security_groups: List of VPC Security Group Membership elements |
- containing only VpcSecurityGroupMembership.VpcSecurityGroupId and |
- VpcSecurityGroupMembership.Status subelements. |
- :ivar pending_modified_values: Specifies that changes to the |
- DB Instance are pending. This element is only included when changes |
- are pending. Specific changes are identified by subelements. |
- :ivar read_replica_dbinstance_identifiers: List of read replicas |
- associated with this DB instance. |
- :ivar status_infos: The status of a Read Replica. If the instance is not a |
- for a read replica, this will be blank. |
- :ivar character_set_name: If present, specifies the name of the character |
- set that this instance is associated with. |
- :ivar subnet_group: Specifies information on the subnet group associated |
- with the DB instance, including the name, description, and subnets |
- in the subnet group. |
- :ivar engine_version: Indicates the database engine version. |
- :ivar license_model: License model information for this DB instance. |
- """ |
- |
- def __init__(self, connection=None, id=None): |
- self.connection = connection |
- self.id = id |
- self.create_time = None |
- self.engine = None |
- self.status = None |
- self.allocated_storage = None |
- self.auto_minor_version_upgrade = None |
- self.endpoint = None |
- self.instance_class = None |
- self.master_username = None |
- self.parameter_groups = [] |
- self.security_groups = [] |
- self.read_replica_dbinstance_identifiers = [] |
- self.availability_zone = None |
- self.backup_retention_period = None |
- self.preferred_backup_window = None |
- self.preferred_maintenance_window = None |
- self.latest_restorable_time = None |
- self.multi_az = False |
- self.iops = None |
- self.vpc_security_groups = None |
- self.pending_modified_values = None |
- self._in_endpoint = False |
- self._port = None |
- self._address = None |
- self.status_infos = None |
- self.character_set_name = None |
- self.subnet_group = None |
- self.engine_version = None |
- self.license_model = None |
- |
- def __repr__(self): |
- return 'DBInstance:%s' % self.id |
- |
- def startElement(self, name, attrs, connection): |
- if name == 'Endpoint': |
- self._in_endpoint = True |
- elif name == 'DBParameterGroups': |
- self.parameter_groups = ResultSet([('DBParameterGroup', |
- ParameterGroup)]) |
- return self.parameter_groups |
- elif name == 'DBSecurityGroups': |
- self.security_groups = ResultSet([('DBSecurityGroup', |
- DBSecurityGroup)]) |
- return self.security_groups |
- elif name == 'VpcSecurityGroups': |
- self.vpc_security_groups = ResultSet([('VpcSecurityGroupMembership', |
- VPCSecurityGroupMembership)]) |
- return self.vpc_security_groups |
- elif name == 'PendingModifiedValues': |
- self.pending_modified_values = PendingModifiedValues() |
- return self.pending_modified_values |
- elif name == 'ReadReplicaDBInstanceIdentifiers': |
- self.read_replica_dbinstance_identifiers = \ |
- ReadReplicaDBInstanceIdentifiers() |
- return self.read_replica_dbinstance_identifiers |
- elif name == 'StatusInfos': |
- self.status_infos = ResultSet([ |
- ('DBInstanceStatusInfo', StatusInfo) |
- ]) |
- return self.status_infos |
- elif name == 'DBSubnetGroup': |
- self.subnet_group = DBSubnetGroup() |
- return self.subnet_group |
- return None |
- |
- def endElement(self, name, value, connection): |
- if name == 'DBInstanceIdentifier': |
- self.id = value |
- elif name == 'DBInstanceStatus': |
- self.status = value |
- elif name == 'InstanceCreateTime': |
- self.create_time = value |
- elif name == 'Engine': |
- self.engine = value |
- elif name == 'DBInstanceStatus': |
- self.status = value |
- elif name == 'AllocatedStorage': |
- self.allocated_storage = int(value) |
- elif name == 'AutoMinorVersionUpgrade': |
- self.auto_minor_version_upgrade = value.lower() == 'true' |
- elif name == 'DBInstanceClass': |
- self.instance_class = value |
- elif name == 'MasterUsername': |
- self.master_username = value |
- elif name == 'Port': |
- if self._in_endpoint: |
- self._port = int(value) |
- elif name == 'Address': |
- if self._in_endpoint: |
- self._address = value |
- elif name == 'Endpoint': |
- self.endpoint = (self._address, self._port) |
- self._in_endpoint = False |
- elif name == 'AvailabilityZone': |
- self.availability_zone = value |
- elif name == 'BackupRetentionPeriod': |
- self.backup_retention_period = int(value) |
- elif name == 'LatestRestorableTime': |
- self.latest_restorable_time = value |
- elif name == 'PreferredMaintenanceWindow': |
- self.preferred_maintenance_window = value |
- elif name == 'PreferredBackupWindow': |
- self.preferred_backup_window = value |
- elif name == 'MultiAZ': |
- if value.lower() == 'true': |
- self.multi_az = True |
- elif name == 'Iops': |
- self.iops = int(value) |
- elif name == 'CharacterSetName': |
- self.character_set_name = value |
- elif name == 'EngineVersion': |
- self.engine_version = value |
- elif name == 'LicenseModel': |
- self.license_model = value |
- else: |
- setattr(self, name, value) |
- |
- @property |
- def security_group(self): |
- """ |
- Provide backward compatibility for previous security_group |
- attribute. |
- """ |
- if len(self.security_groups) > 0: |
- return self.security_groups[-1] |
- else: |
- return None |
- |
- @property |
- def parameter_group(self): |
- """ |
- Provide backward compatibility for previous parameter_group |
- attribute. |
- """ |
- if len(self.parameter_groups) > 0: |
- return self.parameter_groups[-1] |
- else: |
- return None |
- |
- def snapshot(self, snapshot_id): |
- """ |
- Create a new DB snapshot of this DBInstance. |
- |
- :type identifier: string |
- :param identifier: The identifier for the DBSnapshot |
- |
- :rtype: :class:`boto.rds.dbsnapshot.DBSnapshot` |
- :return: The newly created DBSnapshot |
- """ |
- return self.connection.create_dbsnapshot(snapshot_id, self.id) |
- |
- def reboot(self): |
- """ |
- Reboot this DBInstance |
- |
- :rtype: :class:`boto.rds.dbsnapshot.DBSnapshot` |
- :return: The newly created DBSnapshot |
- """ |
- return self.connection.reboot_dbinstance(self.id) |
- |
- def update(self, validate=False): |
- """ |
- Update the DB instance's status information by making a call to fetch |
- the current instance attributes from the service. |
- |
- :type validate: bool |
- :param validate: By default, if EC2 returns no data about the |
- instance the update method returns quietly. If the |
- validate param is True, however, it will raise a |
- ValueError exception if no data is returned from EC2. |
- """ |
- rs = self.connection.get_all_dbinstances(self.id) |
- if len(rs) > 0: |
- for i in rs: |
- if i.id == self.id: |
- self.__dict__.update(i.__dict__) |
- elif validate: |
- raise ValueError('%s is not a valid Instance ID' % self.id) |
- return self.status |
- |
- def stop(self, skip_final_snapshot=False, final_snapshot_id=''): |
- """ |
- Delete this DBInstance. |
- |
- :type skip_final_snapshot: bool |
- :param skip_final_snapshot: This parameter determines whether |
- a final db snapshot is created before the instance is |
- deleted. If True, no snapshot is created. If False, a |
- snapshot is created before deleting the instance. |
- |
- :type final_snapshot_id: str |
- :param final_snapshot_id: If a final snapshot is requested, this |
- is the identifier used for that snapshot. |
- |
- :rtype: :class:`boto.rds.dbinstance.DBInstance` |
- :return: The deleted db instance. |
- """ |
- return self.connection.delete_dbinstance(self.id, |
- skip_final_snapshot, |
- final_snapshot_id) |
- |
- def modify(self, param_group=None, security_groups=None, |
- preferred_maintenance_window=None, |
- master_password=None, allocated_storage=None, |
- instance_class=None, |
- backup_retention_period=None, |
- preferred_backup_window=None, |
- multi_az=False, |
- iops=None, |
- vpc_security_groups=None, |
- apply_immediately=False, |
- new_instance_id=None): |
- """ |
- Modify this DBInstance. |
- |
- :type param_group: str |
- :param param_group: Name of DBParameterGroup to associate with |
- this DBInstance. |
- |
- :type security_groups: list of str or list of DBSecurityGroup objects |
- :param security_groups: List of names of DBSecurityGroup to |
- authorize on this DBInstance. |
- |
- :type preferred_maintenance_window: str |
- :param preferred_maintenance_window: The weekly time range (in |
- UTC) during which maintenance can occur. Default is |
- Sun:05:00-Sun:09:00 |
- |
- :type master_password: str |
- :param master_password: Password of master user for the DBInstance. |
- Must be 4-15 alphanumeric characters. |
- |
- :type allocated_storage: int |
- :param allocated_storage: The new allocated storage size, in GBs. |
- Valid values are [5-1024] |
- |
- :type instance_class: str |
- :param instance_class: The compute and memory capacity of the |
- DBInstance. Changes will be applied at next maintenance |
- window unless apply_immediately is True. |
- |
- Valid values are: |
- |
- * db.m1.small |
- * db.m1.large |
- * db.m1.xlarge |
- * db.m2.xlarge |
- * db.m2.2xlarge |
- * db.m2.4xlarge |
- |
- :type apply_immediately: bool |
- :param apply_immediately: If true, the modifications will be |
- applied as soon as possible rather than waiting for the |
- next preferred maintenance window. |
- |
- :type new_instance_id: str |
- :param new_instance_id: The new DB instance identifier. |
- |
- :type backup_retention_period: int |
- :param backup_retention_period: The number of days for which |
- automated backups are retained. Setting this to zero |
- disables automated backups. |
- |
- :type preferred_backup_window: str |
- :param preferred_backup_window: The daily time range during |
- which automated backups are created (if enabled). Must be |
- in h24:mi-hh24:mi format (UTC). |
- |
- :type multi_az: bool |
- :param multi_az: If True, specifies the DB Instance will be |
- deployed in multiple availability zones. |
- |
- :type iops: int |
- :param iops: The amount of IOPS (input/output operations per |
- second) to Provisioned for the DB Instance. Can be |
- modified at a later date. |
- |
- Must scale linearly. For every 1000 IOPS provision, you |
- must allocated 100 GB of storage space. This scales up to |
- 1 TB / 10 000 IOPS for MySQL and Oracle. MSSQL is limited |
- to 700 GB / 7 000 IOPS. |
- |
- If you specify a value, it must be at least 1000 IOPS and |
- you must allocate 100 GB of storage. |
- |
- :type vpc_security_groups: list |
- :param vpc_security_groups: List of VPCSecurityGroupMembership |
- that this DBInstance is a memberof. |
- |
- :rtype: :class:`boto.rds.dbinstance.DBInstance` |
- :return: The modified db instance. |
- """ |
- return self.connection.modify_dbinstance(self.id, |
- param_group, |
- security_groups, |
- preferred_maintenance_window, |
- master_password, |
- allocated_storage, |
- instance_class, |
- backup_retention_period, |
- preferred_backup_window, |
- multi_az, |
- apply_immediately, |
- iops, |
- vpc_security_groups, |
- new_instance_id) |
- |
- |
-class PendingModifiedValues(dict): |
- def startElement(self, name, attrs, connection): |
- return None |
- |
- def endElement(self, name, value, connection): |
- if name != 'PendingModifiedValues': |
- self[name] = value |
- |
- |
-class ReadReplicaDBInstanceIdentifiers(list): |
- def startElement(self, name, attrs, connection): |
- return None |
- |
- def endElement(self, name, value, connection): |
- if name == 'ReadReplicaDBInstanceIdentifier': |
- self.append(value) |