def _create_deployment_nodes(self, blueprint_id, deployment_id, plan,
                                 node_ids=None):
        node_ids = node_ids or []
        if not isinstance(node_ids, list):
            node_ids = [node_ids]

        raw_nodes = plan['nodes']
        if node_ids:
            raw_nodes = \
                [node for node in raw_nodes if node['id'] in node_ids]
        for raw_node in raw_nodes:
            num_instances = raw_node['instances']['deploy']
            self.sm.put_node(models.DeploymentNode(
                id=raw_node['name'],
                deployment_id=deployment_id,
                blueprint_id=blueprint_id,
                type=raw_node['type'],
                type_hierarchy=raw_node['type_hierarchy'],
                number_of_instances=num_instances,
                planned_number_of_instances=num_instances,
                deploy_number_of_instances=num_instances,
                host_id=raw_node['host_id'] if 'host_id' in raw_node else None,
                properties=raw_node['properties'],
                operations=raw_node['operations'],
                plugins=raw_node['plugins'],
                plugins_to_install=raw_node.get('plugins_to_install'),
                relationships=self._prepare_node_relationships(raw_node)
            ))
Returns a Form class for use in the admin add view. This is used by
dataset/ETHPy150Open cloudify-cosmo/cloudify-manager/rest-service/manager_rest/blueprints_manager.py/BlueprintsManager._create_deployment_nodes--crossover with--dataset/ETHPy150Open django-leonardo/django-leonardo/leonardo/module/media/admin/folder/admin.py/FolderAdmin.get_form