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',
|
||||
'remote_drives': 'remote_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'
|
||||
' }\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
|
||||
|
||||
def take_action(self, parsed_args):
|
||||
|
@ -42,7 +42,8 @@ class NodeTest(testtools.TestCase):
|
||||
mock_node_collection.compose_node.assert_called_once_with(
|
||||
name='fake_name', description='fake_description',
|
||||
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)
|
||||
mock_node.assemble_node.assert_called_once()
|
||||
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,
|
||||
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(
|
||||
name=name, description=description, processor_req=processor_req,
|
||||
memory_req=memory_req, remote_drive_req=remote_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
|
||||
# node automatically here
|
||||
|
Loading…
x
Reference in New Issue
Block a user