Add "security" parameter in node compose for RSD 2.3
Change-Id: Id27018f59c308e094804efcb97393668f719d387
This commit is contained in:
parent
50913a252b
commit
b525bda2a3
@ -25,7 +25,8 @@ ARGUMENTS_NAME_MAPPING = {
|
|||||||
'memory': 'memory_req',
|
'memory': 'memory_req',
|
||||||
'remote_drives': 'remote_drive_req',
|
'remote_drives': 'remote_drive_req',
|
||||||
'local_drives': 'local_drive_req',
|
'local_drives': 'local_drive_req',
|
||||||
'ethernet': 'ethernet_interface_req'
|
'ethernet': 'ethernet_interface_req',
|
||||||
|
'security': 'security_req'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -224,6 +225,29 @@ class ComposeNode(command.Command):
|
|||||||
'EthernetInterfaces/LAN1"\n'
|
'EthernetInterfaces/LAN1"\n'
|
||||||
' }\n'
|
' }\n'
|
||||||
'}]'))
|
'}]'))
|
||||||
|
parser.add_argument(
|
||||||
|
'--security',
|
||||||
|
dest='security',
|
||||||
|
type=json.loads,
|
||||||
|
metavar='<security requirements>',
|
||||||
|
help=('The security requirements of composed node. It may contain '
|
||||||
|
'one or more optional attributes:\n'
|
||||||
|
' - TpmPresent: determine if Composed Node should be '
|
||||||
|
'equipped with TPM module\n\n'
|
||||||
|
' - TpmInterfaceType: overrides TpmPresent parameter (if '
|
||||||
|
'specified TPM module expected). System must be equipped '
|
||||||
|
'with only defined TPM interface type.\n\n'
|
||||||
|
' - TxtEnabled: determine if Composed Node should have '
|
||||||
|
'Trusted Execution Technology (TXT) mode enabled.\n\n'
|
||||||
|
' - ClearTPMOnDelete: used to specify if TPM module should'
|
||||||
|
' be cleared on composed node DELETE request.\n\n'
|
||||||
|
'For example:\n'
|
||||||
|
'{\n'
|
||||||
|
' "TpmPresent": True,\n'
|
||||||
|
' "TpmInterfaceType": "TPM2_0",\n'
|
||||||
|
' "TxtEnabled": True,\n'
|
||||||
|
' "ClearTPMOnDelete": True\n'
|
||||||
|
'}'))
|
||||||
return parser
|
return parser
|
||||||
|
|
||||||
def take_action(self, parsed_args):
|
def take_action(self, parsed_args):
|
||||||
|
@ -42,7 +42,8 @@ class NodeTest(testtools.TestCase):
|
|||||||
mock_node_collection.compose_node.assert_called_once_with(
|
mock_node_collection.compose_node.assert_called_once_with(
|
||||||
name='fake_name', description='fake_description',
|
name='fake_name', description='fake_description',
|
||||||
processor_req=None, memory_req=None, remote_drive_req=None,
|
processor_req=None, memory_req=None, remote_drive_req=None,
|
||||||
local_drive_req=None, ethernet_interface_req=None)
|
local_drive_req=None, ethernet_interface_req=None,
|
||||||
|
security_req=None)
|
||||||
self.mgr.client.get_node.assert_called_once_with(result)
|
self.mgr.client.get_node.assert_called_once_with(result)
|
||||||
mock_node.assemble_node.assert_called_once()
|
mock_node.assemble_node.assert_called_once()
|
||||||
self.assertEqual('/redfish/v1/Nodes/1', result)
|
self.assertEqual('/redfish/v1/Nodes/1', result)
|
||||||
|
@ -29,12 +29,13 @@ class NodeManager(base.Manager):
|
|||||||
|
|
||||||
def compose(self, name=None, description=None, processor_req=None,
|
def compose(self, name=None, description=None, processor_req=None,
|
||||||
memory_req=None, remote_drive_req=None, local_drive_req=None,
|
memory_req=None, remote_drive_req=None, local_drive_req=None,
|
||||||
ethernet_interface_req=None):
|
ethernet_interface_req=None, security_req=None):
|
||||||
node_uri = self.client.get_node_collection().compose_node(
|
node_uri = self.client.get_node_collection().compose_node(
|
||||||
name=name, description=description, processor_req=processor_req,
|
name=name, description=description, processor_req=processor_req,
|
||||||
memory_req=memory_req, remote_drive_req=remote_drive_req,
|
memory_req=memory_req, remote_drive_req=remote_drive_req,
|
||||||
local_drive_req=local_drive_req,
|
local_drive_req=local_drive_req,
|
||||||
ethernet_interface_req=ethernet_interface_req)
|
ethernet_interface_req=ethernet_interface_req,
|
||||||
|
security_req=security_req)
|
||||||
|
|
||||||
# Assume most of user will assemble node after composition, so assemble
|
# Assume most of user will assemble node after composition, so assemble
|
||||||
# node automatically here
|
# node automatically here
|
||||||
|
Loading…
x
Reference in New Issue
Block a user