Merge "Environment check is implemented"

This commit is contained in:
Jenkins 2014-01-23 12:21:02 +00:00 committed by Gerrit Code Review
commit 1f4cf2ef23
3 changed files with 14 additions and 9 deletions

View File

@ -27,7 +27,6 @@ from nailgun.api.validators.node import NodeDisksValidator
from nailgun.db import db from nailgun.db import db
from nailgun.db.sqlalchemy.models import Node from nailgun.db.sqlalchemy.models import Node
from nailgun.db.sqlalchemy.models import NodeAttributes from nailgun.db.sqlalchemy.models import NodeAttributes
from nailgun.errors import errors
from nailgun.logger import logger from nailgun.logger import logger
from nailgun.volumes.manager import DisksFormatConvertor from nailgun.volumes.manager import DisksFormatConvertor
@ -106,14 +105,10 @@ class NodeVolumesInformationHandler(BaseHandler):
* 404 (node not found in db) * 404 (node not found in db)
""" """
node = self.get_object_or_404(Node, node_id) node = self.get_object_or_404(Node, node_id)
if node.cluster is None:
volumes_info = []
try:
volumes_info = DisksFormatConvertor.get_volumes_info(node)
except errors.CannotFindVolumesInfoForRole:
logger.error(traceback.format_exc()) logger.error(traceback.format_exc())
raise web.notfound( raise web.notfound(
message='Cannot calculate volumes info. ' message='Cannot calculate volumes info. '
'Please, add node to a cluster.') 'Please, add node to an environment.')
volumes_info = DisksFormatConvertor.get_volumes_info(node)
return volumes_info return volumes_info

View File

@ -39,7 +39,6 @@ default_messages = {
# disk errors # disk errors
"NotEnoughFreeSpace": "Not enough free space", "NotEnoughFreeSpace": "Not enough free space",
"CannotFindVolumesInfoForRole": "Cannot find volumes info for role",
"NotEnoughOsdNodes": "Not enough OSD nodes", "NotEnoughOsdNodes": "Not enough OSD nodes",
# network errors # network errors

View File

@ -458,6 +458,17 @@ class TestVolumeManager(BaseIntegrationTest):
self.assertEquals(volumes_size, disk['size']) self.assertEquals(volumes_size, disk['size'])
def test_volume_request_without_cluster(self):
self.env.create_node(api=True)
node = self.env.nodes[-1]
resp = self.app.get(
reverse('NodeVolumesInformationHandler',
kwargs={'node_id': node.id}),
headers=self.default_headers,
expect_errors=True
)
self.assertEquals(404, resp.status)
def test_allocates_all_free_space_for_os_for_controller_role(self): def test_allocates_all_free_space_for_os_for_controller_role(self):
node = self.create_node('controller') node = self.create_node('controller')
disks = only_disks(node.volume_manager.volumes) disks = only_disks(node.volume_manager.volumes)