def _parse_plan(blueprint_path, inputs, ignored_modules):
    if dsl_parser is None:
        raise ImportError('cloudify-dsl-parser must be installed to '
                          'execute local workflows. '
                          '(e.g. "pip install cloudify-dsl-parser")')
    plan = dsl_tasks.prepare_deployment_plan(
        dsl_parser.parse_from_path(blueprint_path), inputs=inputs)
    nodes = [Node(node) for node in plan['nodes']]
    node_instances = [
        NodeInstance(instance) for instance in plan['node_instances']
    ]
    _prepare_nodes_and_instances(nodes, node_instances, ignored_modules)
    return plan, nodes, node_instances
Exemple #2
0
def node_get_mock():
    return Node({
        'id': uuid4(),
        'deployment_id': 'deployment-id',
        'blueprint_id': 'blueprint_id',
        'host_id': 'host_id',
        'type': 'Compute',
        'number_of_instances': '1',
        'planned_number_of_instances': '2',
        'properties': {
            'port': '8080'
        }
    })
 def load(self, name):
     self.name = name
     self._storage_dir = os.path.join(self._root_storage_dir, name)
     self._instances_dir = os.path.join(self._storage_dir, 'node-instances')
     self._payload_path = os.path.join(self._storage_dir, 'payload')
     self._data_path = os.path.join(self._storage_dir, 'data')
     with open(self._data_path) as f:
         data = json.loads(f.read())
     self.plan = data['plan']
     self.resources_root = os.path.join(self._storage_dir, 'resources')
     self._blueprint_path = os.path.join(self.resources_root,
                                         data['blueprint_filename'])
     nodes = [Node(node) for node in data['nodes']]
     self._init_locks_and_nodes(nodes)
Exemple #4
0
def node_get_mock():
    return Node({
        'id': uuid4(),
        'deployment_id': 'deployment-id',
        'blueprint_id': 'blueprint_id',
        'host_id': 'host_id',
        'type': 'Compute',
        'number_of_instances': '1',
        'planned_number_of_instances': '2',
        'properties': {
            'port': '8080'
        },
        'permission': 'creator',
        'created_by': 'admin',
        'tenant_name': DEFAULT_TENANT_NAME
    })
Exemple #5
0
def _parse_plan(blueprint_path, inputs, ignored_modules, resolver,
                validate_version):
    if dsl_parser is None:
        raise ImportError('cloudify-dsl-parser must be installed to '
                          'execute local workflows. '
                          '(e.g. "pip install cloudify-dsl-parser") [{0}]'
                          .format(_import_error))
    plan = dsl_tasks.prepare_deployment_plan(
        dsl_parser.parse_from_path(
            dsl_file_path=blueprint_path,
            resolver=resolver,
            validate_version=validate_version),
        inputs=inputs)
    nodes = [Node(node) for node in plan['nodes']]
    node_instances = [NodeInstance(instance)
                      for instance in plan['node_instances']]
    _prepare_nodes_and_instances(nodes, node_instances, ignored_modules)
    return plan, nodes, node_instances
Exemple #6
0
def node_get_mock():
    return Node({
        'id': uuid4(),
        'deployment_id': 'deployment-id',
        'blueprint_id': 'blueprint_id',
        'host_id': 'host_id',
        'type': 'Compute',
        'type_hierarchy': ['cloudify.nodes.Root', 'Compute'],
        'number_of_instances': '1',
        'planned_number_of_instances': '2',
        'properties': {
            'port': '8080'
        },
        'operations': {},
        'visibility': 'private',
        'created_by': 'admin',
        'tenant_name': DEFAULT_TENANT_NAME
    })
Exemple #7
0
 def load(self, name):
     self.name = name
     self._storage_dir = os.path.join(self._root_storage_dir, name)
     self._workdir = os.path.join(self._storage_dir, 'workdir')
     self._instances_dir = os.path.join(self._storage_dir, 'node-instances')
     self._payload_path = os.path.join(self._storage_dir, 'payload')
     self._executions_path = os.path.join(self._storage_dir, 'executions')
     self._data_path = os.path.join(self._storage_dir, 'data')
     with open(self._data_path) as f:
         data = json.loads(f.read(), object_hook=load_datetime)
     self.plan = data['plan']
     self.resources_root = os.path.join(self._storage_dir, 'resources')
     self._blueprint_path = os.path.join(self.resources_root,
                                         data['blueprint_filename'])
     self._provider_context = data.get('provider_context', {})
     self.created_at = data.get('created_at')
     nodes = [Node(node) for node in data['nodes']]
     self._init_locks_and_nodes(nodes)
Exemple #8
0
 def mock_get_nodes(self):
     return [
         Node({'id': 'mock_node',
               'type_hierarchy': 'cloudify.nodes.CloudifyManager'})
     ]
Exemple #9
0
 def get_nodes(self, deployment_id):
     return {
         node_id: Node(n)
         for node_id, n in self.get_deployment(deployment_id)
         ['nodes'].items()
     }
Exemple #10
0
 def load_node(self, deployment_id, node_id):
     dep = self.get_deployment(deployment_id)
     return Node(dep['nodes'][node_id])