Merge "Auto Generated INFO.yaml file"
[snaps.git] / snaps / domain / stack.py
index df4d4e4..2c593d3 100644 (file)
@@ -19,14 +19,22 @@ class Stack:
     SNAPS domain object for Heat Stacks. Should contain attributes that
     are shared amongst cloud providers
     """
     SNAPS domain object for Heat Stacks. Should contain attributes that
     are shared amongst cloud providers
     """
-    def __init__(self, name, stack_id):
+    def __init__(self, name, stack_id, stack_project_id,
+                 status, status_reason):
         """
         Constructor
         :param name: the stack's name
         :param stack_id: the stack's stack_id
         """
         Constructor
         :param name: the stack's name
         :param stack_id: the stack's stack_id
+        :param stack_project_id: the project ID that was spawned from this
+                                 deployment
+        :param status: the stack's last known status code
+        :param status_reason: the stack's last known explanation of the status
         """
         self.name = name
         self.id = stack_id
         """
         self.name = name
         self.id = stack_id
+        self.stack_project_id = stack_project_id
+        self.status = status
+        self.status_reason = status_reason
 
     def __eq__(self, other):
         return (self.name == other.name and
 
     def __eq__(self, other):
         return (self.name == other.name and
@@ -35,13 +43,35 @@ class Stack:
 
 class Resource:
     """
 
 class Resource:
     """
-    SNAPS domain object for resources created by a heat template
+    SNAPS domain object for a resource created by a heat template
     """
     """
-    def __init__(self, resource_type, resource_id):
+    def __init__(self, name, resource_type, resource_id, status,
+                 status_reason):
         """
         Constructor
         """
         Constructor
-        :param resource_type: the type
+        :param name: the resource's name
+        :param resource_type: the resource's type
         :param resource_id: the ID attached to the resource of the given type
         :param resource_id: the ID attached to the resource of the given type
+        :param status: the resource's status code
+        :param status_reason: the resource's status code reason
         """
         """
+        self.name = name
         self.type = resource_type
         self.id = resource_id
         self.type = resource_type
         self.id = resource_id
+        self.status = status
+        self.status_reason = status_reason
+
+
+class Output:
+    """
+    SNAPS domain object for an output defined by a heat template
+    """
+    def __init__(self, **kwargs):
+        """
+        Constructor
+        :param description: the output description
+        :param output_key: the output's key
+        """
+        self.description = kwargs.get('description')
+        self.key = kwargs.get('output_key')
+        self.value = kwargs.get('output_value')