summaryrefslogtreecommitdiff
path: root/api-ref
diff options
context:
space:
mode:
authorIlya Etingof <etingof@gmail.com>2020-03-23 13:47:08 +0100
committerIury Gregory Melo Ferreira <imelofer@redhat.com>2020-05-05 15:57:36 +0200
commit653d4e4ef55bf5acb315339eb79018c0e432c210 (patch)
tree6718206feb7d015b7e631f9093ec1304a1128b3c /api-ref
parent82c26635648ac2e8fa7e0ae4c802a66ba4436637 (diff)
downloadironic-653d4e4ef55bf5acb315339eb79018c0e432c210.tar.gz
Add `network_data` field to ironic node object
A new dictionary field `network_data` is added to the node object. This new field can be populated by the operator with node static network configuration. Ironic API now performs formal JSON document validation of node `network_data` field content against user-supplied JSON schema at driver validation step. As of this commit, the new `network_data` field is not actually used by ironic, otherwise it should be perfectly functional. In the following commits, network static configuration will be taken from this field and handed over to ironic ramdisk bootstrapping utilities. Change-Id: I868b3b56a17f59e5aa1494b2e0ebc9c4e34ef173 Story: 2006691 Task: 36991
Diffstat (limited to 'api-ref')
-rw-r--r--api-ref/source/baremetal-api-v1-nodes.inc4
-rw-r--r--api-ref/source/parameters.yaml7
-rw-r--r--api-ref/source/samples/node-create-response.json1
-rw-r--r--api-ref/source/samples/node-show-response.json1
-rw-r--r--api-ref/source/samples/node-update-driver-info-response.json1
-rw-r--r--api-ref/source/samples/nodes-list-details-response.json2
6 files changed, 16 insertions, 0 deletions
diff --git a/api-ref/source/baremetal-api-v1-nodes.inc b/api-ref/source/baremetal-api-v1-nodes.inc
index 49d5cf436..526f6e0d2 100644
--- a/api-ref/source/baremetal-api-v1-nodes.inc
+++ b/api-ref/source/baremetal-api-v1-nodes.inc
@@ -442,6 +442,7 @@ Response
- allocation_uuid: allocation_uuid
- retired: retired
- retired_reason: retired_reason
+ - network_data: network_data
**Example detailed list of Nodes:**
@@ -491,6 +492,9 @@ only the specified set.
.. versionadded:: 1.65
Introduced the ``lessee`` field.
+.. versionadded:: 1.66
+ Introduced the ``network_data`` field.
+
Normal response codes: 200
Error codes: 400,403,404,406
diff --git a/api-ref/source/parameters.yaml b/api-ref/source/parameters.yaml
index 59567b488..979417abd 100644
--- a/api-ref/source/parameters.yaml
+++ b/api-ref/source/parameters.yaml
@@ -1012,6 +1012,13 @@ name:
in: body
required: true
type: string
+network_data:
+ description: |
+ Static network configuration for the node to eventually pass to node's
+ operating system.
+ in: body
+ required: false
+ type: JSON
network_interface:
description: |
Which Network Interface provider to use when plumbing the network
diff --git a/api-ref/source/samples/node-create-response.json b/api-ref/source/samples/node-create-response.json
index 214305d0e..273d0709a 100644
--- a/api-ref/source/samples/node-create-response.json
+++ b/api-ref/source/samples/node-create-response.json
@@ -38,6 +38,7 @@
"maintenance_reason": null,
"management_interface": null,
"name": "test_node_classic",
+ "network_data": {},
"network_interface": "flat",
"owner": null,
"portgroups": [
diff --git a/api-ref/source/samples/node-show-response.json b/api-ref/source/samples/node-show-response.json
index 9cb1931b0..68b7eacb9 100644
--- a/api-ref/source/samples/node-show-response.json
+++ b/api-ref/source/samples/node-show-response.json
@@ -41,6 +41,7 @@
"maintenance_reason": null,
"management_interface": null,
"name": "test_node_classic",
+ "network_data": {},
"network_interface": "flat",
"owner": null,
"portgroups": [
diff --git a/api-ref/source/samples/node-update-driver-info-response.json b/api-ref/source/samples/node-update-driver-info-response.json
index f7d2d88ee..3655243ce 100644
--- a/api-ref/source/samples/node-update-driver-info-response.json
+++ b/api-ref/source/samples/node-update-driver-info-response.json
@@ -42,6 +42,7 @@
"maintenance_reason": "Replacing the hard drive",
"management_interface": null,
"name": "test_node_classic",
+ "network_data": {},
"network_interface": "flat",
"owner": null,
"portgroups": [
diff --git a/api-ref/source/samples/nodes-list-details-response.json b/api-ref/source/samples/nodes-list-details-response.json
index 90dc72a2a..98c22aa9a 100644
--- a/api-ref/source/samples/nodes-list-details-response.json
+++ b/api-ref/source/samples/nodes-list-details-response.json
@@ -43,6 +43,7 @@
"maintenance_reason": null,
"management_interface": null,
"name": "test_node_classic",
+ "network_data": {},
"network_interface": "flat",
"owner": "john doe",
"portgroups": [
@@ -148,6 +149,7 @@
"maintenance_reason": null,
"management_interface": "ipmitool",
"name": "test_node_dynamic",
+ "network_data": {},
"network_interface": "flat",
"owner": "43e61ec9-8e42-4dcb-bc45-30d66aa93e5b",
"portgroups": [