Merge "Follow-up: Fix improper HTTP status code usage"

This commit is contained in:
Zuul
2025-08-28 14:34:32 +00:00
committed by Gerrit Code Review
6 changed files with 33 additions and 33 deletions

View File

@@ -2873,7 +2873,7 @@ class NodesController(rest.RestController):
of the resource to be returned.
"""
if self.from_chassis:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
rpc_node = api_utils.check_node_policy_and_retrieve(
'baremetal:node:get', node_ident, with_suffix=True)
@@ -2899,7 +2899,7 @@ class NodesController(rest.RestController):
:language: javascript
"""
if self.from_chassis:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
node_capabilities = node.get('properties', {}).get('capabilities', '')
# ``check_allow_boot_mode`` expects ``node_capabilities`` to be a list
@@ -3000,7 +3000,7 @@ class NodesController(rest.RestController):
def _validate_patch(self, patch, reset_interfaces):
corrected_values = {}
if self.from_chassis:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
node_capabilities = api_utils.get_patch_values(
patch, '/properties/capabilities')
@@ -3256,7 +3256,7 @@ class NodesController(rest.RestController):
raise exception.NotFound()
if self.from_chassis:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
context = api.request.context
try:

View File

@@ -589,7 +589,7 @@ class PortsController(rest.RestController):
:raises: NotAcceptable, HTTPNotFound
"""
if self.parent_node_ident or self.parent_portgroup_ident:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
rpc_port, rpc_node = api_utils.check_port_policy_and_retrieve(
'baremetal:port:get', port_ident)
@@ -610,7 +610,7 @@ class PortsController(rest.RestController):
:raises: NotAcceptable, HTTPNotFound, Conflict
"""
if self.parent_node_ident or self.parent_portgroup_ident:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
# NOTE(lucasagomes): Create the node_id attribute on-the-fly
# to satisfy the api -> rpc object
@@ -732,7 +732,7 @@ class PortsController(rest.RestController):
:raises: NotAcceptable, HTTPNotFound
"""
if self.parent_node_ident or self.parent_portgroup_ident:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
api_utils.patch_validate_allowed_fields(patch, PATCH_ALLOWED_FIELDS)
@@ -842,10 +842,10 @@ class PortsController(rest.RestController):
"""Delete a port.
:param port_uuid: UUID of a port.
:raises: Invalid, HTTPNotFound
:raises: MalformedRequestURI, HTTPNotFound
"""
if self.parent_node_ident or self.parent_portgroup_ident:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
rpc_port, rpc_node = api_utils.check_port_policy_and_retrieve(
'baremetal:port:delete', port_uuid)

View File

@@ -364,7 +364,7 @@ class PortgroupsController(pecan.rest.RestController):
'baremetal:portgroup:get', portgroup_ident, portgroup=True)
if self.parent_node_ident:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
api_utils.check_allowed_portgroup_fields(fields)
@@ -411,7 +411,7 @@ class PortgroupsController(pecan.rest.RestController):
context = api.request.context
if self.parent_node_ident:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
if (not api_utils.allow_portgroup_mode_properties()
and (portgroup.get('mode') or portgroup.get('properties'))):
@@ -462,7 +462,7 @@ class PortgroupsController(pecan.rest.RestController):
'baremetal:portgroup:update', portgroup_ident, portgroup=True)
if self.parent_node_ident:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
if (not api_utils.allow_portgroup_mode_properties()
and (api_utils.is_path_updated(patch, '/mode')
@@ -554,7 +554,7 @@ class PortgroupsController(pecan.rest.RestController):
context = api.request.context
if self.parent_node_ident:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
notify.emit_start_notification(context, rpc_portgroup, 'delete',
node_uuid=rpc_node.uuid)

View File

@@ -209,7 +209,7 @@ class VolumeConnectorsController(rest.RestController):
:returns: API-serializable volume connector object.
:raises: Invalid if accessed with specifying a parent
:raises: MalformedRequestURI if accessed with specifying a parent
node.
:raises: VolumeConnectorNotFound if no volume connector exists with
the specified UUID.
@@ -221,7 +221,7 @@ class VolumeConnectorsController(rest.RestController):
target=False)
if self.parent_node_ident:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
return convert_with_links(rpc_connector, fields=fields)
@@ -236,7 +236,7 @@ class VolumeConnectorsController(rest.RestController):
:returns: API-serializable volume connector object.
:raises: Invalid if accessed with specifying a parent
:raises: MalformedRequestURI if accessed with specifying a parent
node.
:raises: VolumeConnectorTypeAndIdAlreadyExists if a volume
connector already exists with the same type and connector_id
@@ -263,7 +263,7 @@ class VolumeConnectorsController(rest.RestController):
value=node_uuid)
if self.parent_node_ident:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
# NOTE(hshiina): UUID is mandatory for notification payload
if not connector.get('uuid'):
@@ -296,7 +296,7 @@ class VolumeConnectorsController(rest.RestController):
:returns: API-serializable volume connector object.
:raises: Invalid if accessed with specifying a
:raises: MalformedRequestURI if accessed with specifying a
parent node.
:raises: PatchError if a given patch can not be applied.
:raises: VolumeConnectorNotFound if no volume connector exists with
@@ -321,7 +321,7 @@ class VolumeConnectorsController(rest.RestController):
target=False)
if self.parent_node_ident:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
api_utils.patch_validate_allowed_fields(patch, PATCH_ALLOWED_FIELDS)
@@ -380,7 +380,7 @@ class VolumeConnectorsController(rest.RestController):
:param connector_uuid: UUID of a volume connector.
:raises: Invalid if accessed with specifying a
:raises: MalformedRequestURI if accessed with specifying a
parent node.
:raises: NodeLocked if node is locked by another conductor
:raises: NodeNotFound if the node associated with the connector does
@@ -397,7 +397,7 @@ class VolumeConnectorsController(rest.RestController):
connector_uuid,
target=False)
if self.parent_node_ident:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
notify.emit_start_notification(context, rpc_connector, 'delete',
node_uuid=rpc_node.uuid)

View File

@@ -239,7 +239,7 @@ class VolumeTargetsController(rest.RestController):
:returns: API-serializable volume target object.
:raises: Invalid if accessed with specifying a parent
:raises: MalformedRequestURI if accessed with specifying a parent
node.
:raises: VolumeTargetNotFound if no volume target with this UUID exists
"""
@@ -250,7 +250,7 @@ class VolumeTargetsController(rest.RestController):
target=True)
if self.parent_node_ident:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
cdict = api.request.context.to_policy_values()
if not policy.check_policy('baremetal:volume:view_target_properties',
@@ -270,7 +270,7 @@ class VolumeTargetsController(rest.RestController):
:returns: API-serializable volume target object.
:raises: Invalid if accessed with specifying a parent
:raises: MalformedRequestURI if accessed with specifying a parent
node.
:raises: VolumeTargetBootIndexAlreadyExists if a volume target already
exists with the same node ID and boot index
@@ -297,7 +297,7 @@ class VolumeTargetsController(rest.RestController):
value=node_uuid)
if self.parent_node_ident:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
# NOTE(hshiina): UUID is mandatory for notification payload
if not target.get('uuid'):
@@ -328,7 +328,7 @@ class VolumeTargetsController(rest.RestController):
:returns: API-serializable volume target object.
:raises: Invalid if accessed with specifying a
:raises: MalformedRequestURI if accessed with specifying a
parent node.
:raises: PatchError if a given patch can not be applied.
:raises: InvalidParameterValue if the volume target's UUID is being
@@ -350,7 +350,7 @@ class VolumeTargetsController(rest.RestController):
target=True)
if self.parent_node_ident:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
api_utils.patch_validate_allowed_fields(patch, PATCH_ALLOWED_FIELDS)
@@ -414,7 +414,7 @@ class VolumeTargetsController(rest.RestController):
:param target_uuid: UUID of a volume target.
:raises: Invalid if accessed with specifying a
:raises: MalformedRequestURI if accessed with specifying a
parent node.
:raises: NodeLocked if node is locked by another conductor
:raises: NodeNotFound if the node associated with the target does
@@ -430,7 +430,7 @@ class VolumeTargetsController(rest.RestController):
target=True)
if self.parent_node_ident:
raise exception.Invalid(_("Malformed request URI."))
raise exception.MalformedRequestURI()
rpc_target = objects.VolumeTarget.get_by_uuid(context, target_uuid)
rpc_node = objects.Node.get_by_id(context, rpc_target.node_id)

View File

@@ -140,6 +140,10 @@ class Invalid(IronicException):
code = http_client.BAD_REQUEST
class MalformedRequestURI(Invalid):
_msg_fmt = _("Malformed request URI.")
class Conflict(IronicException):
_msg_fmt = _('Conflict.')
code = http_client.CONFLICT
@@ -525,10 +529,6 @@ class ServiceUnavailable(IronicException):
_msg_fmt = _("Connection failed")
class Forbidden(IronicException):
_msg_fmt = _("Requested OpenStack Baremetal API is forbidden")
# TODO(dtantsur): leave only one variant
BadRequest = Invalid