[pkg-eucalyptus-commits] [SCM] managing cloud instances for Eucalyptus branch, master, updated. 3.0.0-alpha3-257-g1da8e3a
Garrett Holmstrom
gholms at fedoraproject.org
Sun Jun 16 02:30:27 UTC 2013
The following commit has been merged in the master branch:
commit 7689c8a050a83c033253715e86ef26824f510e33
Author: Garrett Holmstrom <gholms at fedoraproject.org>
Date: Fri Feb 22 16:40:21 2013 -0800
Add base classes for the triangle
diff --git a/euca2ools/commands/walrus/deleteobject.py b/euca2ools/commands/autoscaling/__init__.py
similarity index 57%
copy from euca2ools/commands/walrus/deleteobject.py
copy to euca2ools/commands/autoscaling/__init__.py
index 13947b9..5456536 100644
--- a/euca2ools/commands/walrus/deleteobject.py
+++ b/euca2ools/commands/autoscaling/__init__.py
@@ -28,22 +28,31 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-from requestbuilder import Arg
-from . import WalrusRequest
+from requestbuilder import Arg, SERVICE
+import requestbuilder.auth
+import requestbuilder.service
+import requestbuilder.request
+from .. import Euca2ools
-class DeleteObject(WalrusRequest):
- DESCRIPTION = 'Delete objects from the server'
- ARGS = [Arg('paths', metavar='BUCKET/KEY', nargs='+', route_to=None)]
+class AutoScaling(requestbuilder.service.BaseService):
+ NAME = 'autoscaling'
+ DESCRIPTION = 'Auto-scaling service'
+ API_VERSION = '2011-01-01'
+ AUTH_CLASS = requestbuilder.auth.QuerySigV2Auth
+ URL_ENVVAR = 'AWS_AUTO_SCALING_URL'
- def configure(self):
- WalrusRequest.configure(self)
- for path in self.args['paths']:
- if '/' not in path:
- self._cli_parser.error(
- "path '{0}' must include a key name")
+class AutoScalingRequest(requestbuilder.request.AWSQueryRequest):
+ SUITE = Euca2ools
+ SERVICE_CLASS = AutoScaling
+ ARGS = [Arg('-U', '--url', dest='url', metavar='URL', route_to=SERVICE,
+ help='auto-scaling service endpoint URL')]
- def main(self):
- self.method = 'DELETE'
- for path in self.args['paths']:
- self.path = path
- self.send()
+ def parse_response(self, response):
+ response_dict = requestbuilder.request.AWSQueryRequest.parse_response(
+ self, response)
+ useful_keys = list(filter(lambda x: x != 'ResponseMetadata',
+ response_dict.keys()))
+ if len(useful_keys) == 1:
+ return response_dict[useful_keys[0]]
+ else:
+ return response_dict
diff --git a/euca2ools/commands/walrus/deleteobject.py b/euca2ools/commands/elasticloadbalancing/__init__.py
similarity index 57%
copy from euca2ools/commands/walrus/deleteobject.py
copy to euca2ools/commands/elasticloadbalancing/__init__.py
index 13947b9..4eac030 100644
--- a/euca2ools/commands/walrus/deleteobject.py
+++ b/euca2ools/commands/elasticloadbalancing/__init__.py
@@ -28,22 +28,31 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-from requestbuilder import Arg
-from . import WalrusRequest
+from requestbuilder import Arg, SERVICE
+import requestbuilder.auth
+import requestbuilder.service
+import requestbuilder.request
+from .. import Euca2ools
-class DeleteObject(WalrusRequest):
- DESCRIPTION = 'Delete objects from the server'
- ARGS = [Arg('paths', metavar='BUCKET/KEY', nargs='+', route_to=None)]
+class ELB(requestbuilder.service.BaseService):
+ NAME = 'elasticloadbalancing'
+ DESCRIPTION = 'Load balancing service'
+ API_VERSION = '2012-06-01'
+ AUTH_CLASS = requestbuilder.auth.QuerySigV2Auth
+ URL_ENVVAR = 'AWS_ELB_URL'
- def configure(self):
- WalrusRequest.configure(self)
- for path in self.args['paths']:
- if '/' not in path:
- self._cli_parser.error(
- "path '{0}' must include a key name")
+class ELBRequest(requestbuilder.request.AWSQueryRequest):
+ SUITE = Euca2ools
+ SERVICE_CLASS = ELB
+ ARGS = [Arg('-U', '--url', dest='url', metavar='URL', route_to=SERVICE,
+ help='load balancing service endpoint URL')]
- def main(self):
- self.method = 'DELETE'
- for path in self.args['paths']:
- self.path = path
- self.send()
+ def parse_response(self, response):
+ response_dict = requestbuilder.request.AWSQueryRequest.parse_response(
+ self, response)
+ useful_keys = list(filter(lambda x: x != 'ResponseMetadata',
+ response_dict.keys()))
+ if len(useful_keys) == 1:
+ return response_dict[useful_keys[0]]
+ else:
+ return response_dict
diff --git a/euca2ools/commands/walrus/deleteobject.py b/euca2ools/commands/monitoring/__init__.py
similarity index 57%
copy from euca2ools/commands/walrus/deleteobject.py
copy to euca2ools/commands/monitoring/__init__.py
index 13947b9..0e5febb 100644
--- a/euca2ools/commands/walrus/deleteobject.py
+++ b/euca2ools/commands/monitoring/__init__.py
@@ -28,22 +28,31 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-from requestbuilder import Arg
-from . import WalrusRequest
+from requestbuilder import Arg, SERVICE
+import requestbuilder.auth
+import requestbuilder.service
+import requestbuilder.request
+from .. import Euca2ools
-class DeleteObject(WalrusRequest):
- DESCRIPTION = 'Delete objects from the server'
- ARGS = [Arg('paths', metavar='BUCKET/KEY', nargs='+', route_to=None)]
+class CloudWatch(requestbuilder.service.BaseService):
+ NAME = 'monitoring'
+ DESCRIPTION = 'Instance monitoring service'
+ API_VERSION = '2010-08-01'
+ AUTH_CLASS = requestbuilder.auth.QuerySigV2Auth
+ URL_ENVVAR = 'AWS_CLOUDWATCH_URL'
- def configure(self):
- WalrusRequest.configure(self)
- for path in self.args['paths']:
- if '/' not in path:
- self._cli_parser.error(
- "path '{0}' must include a key name")
+class CloudWatchRequest(requestbuilder.request.AWSQueryRequest):
+ SUITE = Euca2ools
+ SERVICE_CLASS = CloudWatch
+ ARGS = [Arg('-U', '--url', dest='url', metavar='URL', route_to=SERVICE,
+ help='instance monitoring service endpoint URL')]
- def main(self):
- self.method = 'DELETE'
- for path in self.args['paths']:
- self.path = path
- self.send()
+ def parse_response(self, response):
+ response_dict = requestbuilder.request.AWSQueryRequest.parse_response(
+ self, response)
+ useful_keys = list(filter(lambda x: x != 'ResponseMetadata',
+ response_dict.keys()))
+ if len(useful_keys) == 1:
+ return response_dict[useful_keys[0]]
+ else:
+ return response_dict
--
managing cloud instances for Eucalyptus
More information about the pkg-eucalyptus-commits
mailing list