pnap_bmc_api 2.3.0 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e0e403b72298e0c5ebd54e597d6acf7e807b32109c68b63b87ce36e19ab976df
4
- data.tar.gz: 336587e617090fbfb79ce91a6b61be716041144fb75201ac385c5b1f239c5dce
3
+ metadata.gz: c40d5754b80dd8b56a440afba771ed5b727537b77521e531830ba1debf83831f
4
+ data.tar.gz: b240c6e9af5f12bb693680368fd28a5ce9115084d2ae150775a21268480e15eb
5
5
  SHA512:
6
- metadata.gz: c9dd81c79d0e2071f6eb3e4e37e70e908d7b645e1e4baffcb4e8056de0ad14dba487e9760ff17c8d701d7ad0623da39a6a70938c2fd59d1ed26f073931d6ecff
7
- data.tar.gz: a09a831274625a9bd82f2b3ee22757b83d6aeb2c00cb85cbc133942139feccc69f3f1d2fbd3eef077e6ab9552a378157352a6a327ba5b656136a967eba2160fd
6
+ metadata.gz: 8936b33dadfb9f0ee3fd75da9423231871bb4b64363a7feb392c744719047b19438b59e46904c8091e6678d11bd013f4adf22e33f6bfb029ee4b92de5ba436bb
7
+ data.tar.gz: '086d24133b190f31d75f98e19670b58664f1643e1bd381a089a2a6118ea83153f05c6454e773723970459faf2a783be17669faf63ad7d0b2b216947865e1edb4'
data/README.md CHANGED
@@ -146,6 +146,7 @@ Class | Method | HTTP request | Description
146
146
  *BmcApi::ServersApi* | [**servers_server_id_get**](docs/ServersApi.md#servers_server_id_get) | **GET** /servers/{serverId} | Get server.
147
147
  *BmcApi::ServersApi* | [**servers_server_id_ip_blocks_ip_block_id_delete**](docs/ServersApi.md#servers_server_id_ip_blocks_ip_block_id_delete) | **DELETE** /servers/{serverId}/network-configuration/ip-block-configurations/ip-blocks/{ipBlockId} | Unassign IP Block from Server.
148
148
  *BmcApi::ServersApi* | [**servers_server_id_ip_blocks_post**](docs/ServersApi.md#servers_server_id_ip_blocks_post) | **POST** /servers/{serverId}/network-configuration/ip-block-configurations/ip-blocks | Assign IP Block to Server.
149
+ *BmcApi::ServersApi* | [**servers_server_id_os_configuration_ipxe_put**](docs/ServersApi.md#servers_server_id_os_configuration_ipxe_put) | **PUT** /servers/{serverId}/os-configuration/ipxe | Updates the iPXE OS configuration.
149
150
  *BmcApi::ServersApi* | [**servers_server_id_patch**](docs/ServersApi.md#servers_server_id_patch) | **PATCH** /servers/{serverId} | Patch a Server.
150
151
  *BmcApi::ServersApi* | [**servers_server_id_private_networks_patch**](docs/ServersApi.md#servers_server_id_private_networks_patch) | **PATCH** /servers/{serverId}/network-configuration/private-network-configuration/private-networks/{privateNetworkId} | Updates the server's private network's IP addresses
151
152
  *BmcApi::ServersApi* | [**servers_server_id_private_networks_post**](docs/ServersApi.md#servers_server_id_private_networks_post) | **POST** /servers/{serverId}/network-configuration/private-network-configuration/private-networks | Adds the server to a private network.
@@ -168,6 +169,8 @@ Class | Method | HTTP request | Description
168
169
  - [BmcApi::NetworkConfiguration](docs/NetworkConfiguration.md)
169
170
  - [BmcApi::OsConfiguration](docs/OsConfiguration.md)
170
171
  - [BmcApi::OsConfigurationCloudInit](docs/OsConfigurationCloudInit.md)
172
+ - [BmcApi::OsConfigurationIPXE](docs/OsConfigurationIPXE.md)
173
+ - [BmcApi::OsConfigurationIPXENativeVlanConfiguration](docs/OsConfigurationIPXENativeVlanConfiguration.md)
171
174
  - [BmcApi::OsConfigurationMap](docs/OsConfigurationMap.md)
172
175
  - [BmcApi::OsConfigurationMapEsxi](docs/OsConfigurationMapEsxi.md)
173
176
  - [BmcApi::OsConfigurationMapProxmox](docs/OsConfigurationMapProxmox.md)
@@ -179,6 +182,7 @@ Class | Method | HTTP request | Description
179
182
  - [BmcApi::Quota](docs/Quota.md)
180
183
  - [BmcApi::QuotaEditLimitRequest](docs/QuotaEditLimitRequest.md)
181
184
  - [BmcApi::QuotaEditLimitRequestDetails](docs/QuotaEditLimitRequestDetails.md)
185
+ - [BmcApi::RebootRequest](docs/RebootRequest.md)
182
186
  - [BmcApi::RelinquishIpBlock](docs/RelinquishIpBlock.md)
183
187
  - [BmcApi::ReservationTransferDetails](docs/ReservationTransferDetails.md)
184
188
  - [BmcApi::ResetResult](docs/ResetResult.md)
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.3.0
1
+ 2.4.0
@@ -13,6 +13,7 @@
13
13
  | **install_os_to_ram** | **Boolean** | If true, OS will be installed to and booted from the server's RAM. On restart RAM OS will be lost and the server will not be reachable unless a custom bootable OS has been deployed. Follow the <a href='https://phoenixnap.com/kb/bmc-custom-os' target='_blank'>instructions</a> on how to install custom OS on BMC. Only supported for ubuntu/focal and ubuntu/jammy. | [optional][default to false] |
14
14
  | **esxi** | [**EsxiOsConfiguration**](EsxiOsConfiguration.md) | | [optional] |
15
15
  | **cloud_init** | [**OsConfigurationCloudInit**](OsConfigurationCloudInit.md) | | [optional] |
16
+ | **i_pxe** | [**OsConfigurationIPXE**](OsConfigurationIPXE.md) | | [optional] |
16
17
 
17
18
  ## Example
18
19
 
@@ -28,7 +29,8 @@ instance = BmcApi::OsConfiguration.new(
28
29
  management_access_allowed_ips: ["172.217.22.14","10.111.14.40/29","10.111.14.66 - 10.111.14.71"],
29
30
  install_os_to_ram: true,
30
31
  esxi: null,
31
- cloud_init: null
32
+ cloud_init: null,
33
+ i_pxe: null
32
34
  )
33
35
  ```
34
36
 
@@ -12,7 +12,7 @@
12
12
  require 'pnap_bmc_api'
13
13
 
14
14
  instance = BmcApi::OsConfigurationCloudInit.new(
15
- user_data: [B@7243145f
15
+ user_data: [B@5f6b53ed
16
16
  )
17
17
  ```
18
18
 
@@ -0,0 +1,20 @@
1
+ # BmcApi::OsConfigurationIPXE
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **url** | **String** | The URL of the iPXE boot script used to start the server. | |
8
+ | **native_vlan_configuration** | [**OsConfigurationIPXENativeVlanConfiguration**](OsConfigurationIPXENativeVlanConfiguration.md) | | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'pnap_bmc_api'
14
+
15
+ instance = BmcApi::OsConfigurationIPXE.new(
16
+ url: https://example.com/boot.ipxe,
17
+ native_vlan_configuration: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,22 @@
1
+ # BmcApi::OsConfigurationIPXENativeVlanConfiguration
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **vlan_id** | **Integer** | The VLAN ID of the network to be used as the native VLAN. The value must reference a public network with IP V4 block(s) or a public IP V4 block network to which the server is (or will be) attached. If omitted during provisioning, the native VLAN is matched to the configured/auto-purchased public IP V4 block. If no public IP block is available, a VLAN ID must be provided. The VLAN ID must belong to one of the public networks for any of the specified servers. During post-provisioning, if Native VLAN is omitted, the server will be configured with no native VLAN. If provided, the VLAN ID must be specified and must belong to any of the existing server public networks or IP block networks attached to the server. | [optional] |
8
+ | **static_dhcp_address_v4** | **String** | The static IP V4 address assigned to the server within the native VLAN. This address is set as the DHCP reservation and used for the iPXE boot process. Value must be an available/unused IP V4 address within the native network usable IP range. If omitted, the first available IP in the native network will be automatically assigned. Therefore, at least one IP must be available within the native network. | [optional] |
9
+ | **status** | **String** | (Read-only) The status of the native VLAN configuration. | [optional][readonly] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'pnap_bmc_api'
15
+
16
+ instance = BmcApi::OsConfigurationIPXENativeVlanConfiguration.new(
17
+ vlan_id: 10,
18
+ static_dhcp_address_v4: 185.74.213.56,
19
+ status: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,20 @@
1
+ # BmcApi::RebootRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **boot_type** | **String** | Specifies whether to boot via `IPXE` (requires script) or `STANDARD` (default mechanism, incompatible with `ipxeUrl`). | [optional][default to 'STANDARD'] |
8
+ | **ipxe_url** | **String** | The URL for the iPXE script, used only with `IPXE` boot type. If provided, it updates and replaces the existing stored URL; if not provided, the existing URL will be used. | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'pnap_bmc_api'
14
+
15
+ instance = BmcApi::RebootRequest.new(
16
+ boot_type: null,
17
+ ipxe_url: https://example.com/boot.ipxe
18
+ )
19
+ ```
20
+
data/docs/Server.md CHANGED
@@ -8,7 +8,7 @@
8
8
  | **status** | **String** | The status of the server. Can have one of the following values: `creating` , `powered-on` , `powered-off` , `rebooting` , `resetting` , `deleting` , `reserved` , `error` or `reinstating`. | |
9
9
  | **hostname** | **String** | Hostname of server. | |
10
10
  | **description** | **String** | Description of server. | [optional] |
11
- | **os** | **String** | The server’s OS ID used when the server was created. Currently this field should be set to either `ubuntu/bionic`, `ubuntu/focal`, `ubuntu/jammy`, `ubuntu/jammy+pytorch`, `ubuntu/noble`, `centos/centos7`, `centos/centos8`, `windows/srv2019std`, `windows/srv2019dc`, `windows/srv2022std`, `windows/srv2022dc`, `windows/srv2025std`, `windows/srv2025dc`, `esxi/esxi70`, `esxi/esxi80`, `almalinux/almalinux8`, `rockylinux/rockylinux8`, `almalinux/almalinux9`, `rockylinux/rockylinux9`, `virtuozzo/virtuozzo7`, `oraclelinux/oraclelinux9`, `debian/bullseye`, `debian/bookworm`, `debian/trixie`, `proxmox/bullseye`, `proxmox/proxmox8`, `proxmox/proxmox9`, `netris/controller`, `netris/softgate_1g`, `netris/softgate_10g` or `netris/softgate_25g`. | [optional] |
11
+ | **os** | **String** | The server’s OS ID used when the server was created. Currently this field should be set to either `ubuntu/bionic`, `ubuntu/focal`, `ubuntu/jammy`, `ubuntu/jammy+pytorch`, `ubuntu/noble`, `centos/centos7`, `centos/centos8`, `windows/srv2019std`, `windows/srv2019dc`, `windows/srv2022std`, `windows/srv2022dc`, `windows/srv2025std`, `windows/srv2025dc`, `esxi/esxi70`, `esxi/esxi80`, `almalinux/almalinux8`, `rockylinux/rockylinux8`, `almalinux/almalinux9`, `rockylinux/rockylinux9`, `virtuozzo/virtuozzo7`, `oraclelinux/oraclelinux9`, `debian/bullseye`, `debian/bookworm`, `debian/trixie`, `proxmox/bullseye`, `proxmox/proxmox8`, `proxmox/proxmox9`, `netris/controller`, `netris/softgate_1g`, `netris/softgate_10g` , `netris/softgate_25g` or `ipxe`. | [optional] |
12
12
  | **type** | **String** | Server type ID. Cannot be changed once a server is created. Currently this field should be set to either `s0.d1.small`, `s0.d1.medium`, `s1.c1.small`, `s1.c1.medium`, `s1.c2.medium`, `s1.c2.large`, `s1.e1.small`, `s1.e1.medium`, `s1.e1.large`, `s2.c1.small`, `s2.c1.medium`, `s2.c1.large`, `s2.c2.small`, `s2.c2.medium`, `s2.c2.large`, `d1.c4.small`, `d1.c4.medium`, `d1.c4.large`, `d1.m4.medium`, `d2.c1.medium`, `d2.c2.medium`, `d2.c3.medium`, `d2.c4.medium`, `d2.c5.medium`, `d2.c1.large`, `d2.c2.large`, `d2.c3.large`, `d2.c4.large`, `d2.c5.large`, `d2.m1.xlarge`, `d2.m2.xxlarge`, `d2.m3.xlarge`, `d2.m4.xlarge`, `d2.m5.xlarge`, `d2.c4.db1.pliops1`, `d3.m4.xlarge`, `d3.m5.xlarge`, `d3.m6.xlarge`, `a1.c5.large`, `a1.c5.xlarge`, `d3.s5.xlarge`, `d3.m4.xxlarge`, `d3.m5.xxlarge`, `d3.m6.xxlarge`, `s3.c3.medium`, `s3.c3.large`, `d3.c4.medium`, `d3.c5.medium`, `d3.c6.medium`, `d3.c1.large`, `d3.c2.large`, `d3.c3.large`, `d3.m1.xlarge`, `d3.m2.xlarge`, `d3.m3.xlarge`, `d3.g2.c1.xlarge`, `d3.g2.c2.xlarge`, `d3.g2.c3.xlarge`, `d3.g3.c2.medium`, `s4.x6.c6.large`, `s4.x6.m6.xlarge`, `s5.x6.c3.medium`, `s5.x6.c3.large`, `s5.x6.c8.medium`, `s5.x6.c9.medium`, `s5.x6.c8.large`, `s5.x6.c9.large`, `s5.x6.m8.xlarge`, `s5.x6.m9.xlarge`, `s4.c3.medium`, `s4.c6.medium`, `s4.c6.large`, `s4.c6.xlarge`, `s4.s2.large`, `a2.c9.large` or `a2.c9.xlarge`. | |
13
13
  | **location** | **String** | Server location ID. Cannot be changed once a server is created. Currently this field should be set to `PHX`, `ASH`, `SGP`, `NLD`, `CHI` or `SEA`. | |
14
14
  | **cpu** | **String** | A description of the machine CPU. | |
@@ -20,7 +20,7 @@
20
20
  | **private_ip_addresses** | **Array<String>** | Private IP addresses assigned to server. | |
21
21
  | **public_ip_addresses** | **Array<String>** | Public IP addresses assigned to server. | [optional] |
22
22
  | **reservation_id** | **String** | The reservation reference id if any. | [optional] |
23
- | **pricing_model** | **String** | The pricing model this server is being billed. Currently this field should be set to `HOURLY`, `ONE_MONTH_RESERVATION`, `TWELVE_MONTHS_RESERVATION`, `TWENTY_FOUR_MONTHS_RESERVATION` or `THIRTY_SIX_MONTHS_RESERVATION`. | [default to 'HOURLY'] |
23
+ | **pricing_model** | **String** | The pricing model this server is being billed. Currently this field should be set to `HOURLY`, `ONE_MONTH_RESERVATION`, `TWELVE_MONTHS_RESERVATION`, `TWENTY_FOUR_MONTHS_RESERVATION`, `THIRTY_SIX_MONTHS_RESERVATION` or `CUSTOM_TERM_RESERVATION`. | [default to 'HOURLY'] |
24
24
  | **password** | **String** | Auto-generated password set for user `Admin` on Windows server, user `root` on ESXi servers, user `root` on Proxmox server and user `netris` on Netris servers.<br> The password is not stored and therefore will only be returned in response to provisioning a server. Copy and save it for future reference. | [optional] |
25
25
  | **network_type** | **String** | The type of network configuration for this server. Currently this field should be set to `PUBLIC_AND_PRIVATE`, `PRIVATE_ONLY`, `PUBLIC_ONLY` or `NONE`. | [optional][default to 'PUBLIC_AND_PRIVATE'] |
26
26
  | **cluster_id** | **String** | The cluster reference id if any. | [optional] |
data/docs/ServerCreate.md CHANGED
@@ -6,7 +6,7 @@
6
6
  | ---- | ---- | ----------- | ----- |
7
7
  | **hostname** | **String** | Hostname of server. | |
8
8
  | **description** | **String** | Description of server. | [optional] |
9
- | **os** | **String** | The server’s OS ID used when the server was created. Currently this field should be set to either `ubuntu/bionic`, `ubuntu/focal`, `ubuntu/jammy`, `ubuntu/jammy+pytorch`, `ubuntu/noble`, `centos/centos7`, `centos/centos8`, `windows/srv2019std`, `windows/srv2019dc`, `windows/srv2022std`, `windows/srv2022dc`, `windows/srv2025std`, `windows/srv2025dc`, `esxi/esxi70`, `esxi/esxi80`, `almalinux/almalinux8`, `rockylinux/rockylinux8`, `almalinux/almalinux9`, `rockylinux/rockylinux9`, `virtuozzo/virtuozzo7`, `oraclelinux/oraclelinux9`, `debian/bullseye`, `debian/bookworm`, `debian/trixie`, `proxmox/bullseye`, `proxmox/proxmox8`, `proxmox/proxmox9`, `netris/controller`, `netris/softgate_1g`, `netris/softgate_10g` or `netris/softgate_25g`. | |
9
+ | **os** | **String** | The server’s OS ID used when the server was created. Currently this field should be set to either `ubuntu/bionic`, `ubuntu/focal`, `ubuntu/jammy`, `ubuntu/jammy+pytorch`, `ubuntu/noble`, `centos/centos7`, `centos/centos8`, `windows/srv2019std`, `windows/srv2019dc`, `windows/srv2022std`, `windows/srv2022dc`, `windows/srv2025std`, `windows/srv2025dc`, `esxi/esxi70`, `esxi/esxi80`, `almalinux/almalinux8`, `rockylinux/rockylinux8`, `almalinux/almalinux9`, `rockylinux/rockylinux9`, `virtuozzo/virtuozzo7`, `oraclelinux/oraclelinux9`, `debian/bullseye`, `debian/bookworm`, `debian/trixie`, `proxmox/bullseye`, `proxmox/proxmox8`, `proxmox/proxmox9`, `netris/controller`, `netris/softgate_1g`, `netris/softgate_10g`, `netris/softgate_25g` or `ipxe`. | |
10
10
  | **type** | **String** | Server type ID. Cannot be changed once a server is created. Currently this field should be set to either `s0.d1.small`, `s0.d1.medium`, `s1.c1.small`, `s1.c1.medium`, `s1.c2.medium`, `s1.c2.large`, `s1.e1.small`, `s1.e1.medium`, `s1.e1.large`, `s2.c1.small`, `s2.c1.medium`, `s2.c1.large`, `s2.c2.small`, `s2.c2.medium`, `s2.c2.large`, `d1.c4.small`, `d1.c4.medium`, `d1.c4.large`, `d1.m4.medium`, `d2.c1.medium`, `d2.c2.medium`, `d2.c3.medium`, `d2.c4.medium`, `d2.c5.medium`, `d2.c1.large`, `d2.c2.large`, `d2.c3.large`, `d2.c4.large`, `d2.c5.large`, `d2.m1.xlarge`, `d2.m2.xxlarge`, `d2.m3.xlarge`, `d2.m4.xlarge`, `d2.m5.xlarge`, `d2.c4.db1.pliops1`, `d3.m4.xlarge`, `d3.m5.xlarge`, `d3.m6.xlarge`, `a1.c5.large`, `a1.c5.xlarge`, `d3.s5.xlarge`, `d3.m4.xxlarge`, `d3.m5.xxlarge`, `d3.m6.xxlarge`, `s3.c3.medium`, `s3.c3.large`, `d3.c4.medium`, `d3.c5.medium`, `d3.c6.medium`, `d3.c1.large`, `d3.c2.large`, `d3.c3.large`, `d3.m1.xlarge`, `d3.m2.xlarge`, `d3.m3.xlarge`, `d3.g2.c1.xlarge`, `d3.g2.c2.xlarge`, `d3.g2.c3.xlarge`,`d3.g3.c2.medium`, `s4.x6.c6.large`, `s4.x6.m6.xlarge`, `s5.x6.c3.medium`, `s5.x6.c3.large`, `s5.x6.c8.medium`, `s5.x6.c9.medium`, `s5.x6.c8.large`, `s5.x6.c9.large`, `s5.x6.m8.xlarge`, `s5.x6.m9.xlarge`, `s4.c3.medium`, `s4.c6.medium`, `s4.c6.large`, `s4.c6.xlarge`, `s4.s2.large`, `a2.c9.large` or `a2.c9.xlarge`. | |
11
11
  | **location** | **String** | Server location ID. Cannot be changed once a server is created. Currently this field should be set to `PHX`, `ASH`, `SGP`, `NLD`, `CHI` or `SEA`. | |
12
12
  | **install_default_ssh_keys** | **Boolean** | Whether or not to install SSH keys marked as default in addition to any SSH keys specified in this request. | [optional][default to true] |
@@ -6,7 +6,7 @@
6
6
  | ---- | ---- | ----------- | ----- |
7
7
  | **hostname** | **String** | Hostname of server. | |
8
8
  | **description** | **String** | Description of server. | [optional] |
9
- | **os** | **String** | The server’s OS ID used when the server was created. Currently this field should be set to either `ubuntu/bionic`, `ubuntu/focal`, `ubuntu/jammy`, `ubuntu/jammy+pytorch`, `ubuntu/noble`, `centos/centos7`, `centos/centos8`, `windows/srv2019std`, `windows/srv2019dc`, `windows/srv2022std`, `windows/srv2022dc`, `windows/srv2025std`, `windows/srv2025dc`, `esxi/esxi70`, `esxi/esxi80`, `almalinux/almalinux8`, `almalinux/almalinux9`, `rockylinux/rockylinux8`, `rockylinux/rockylinux9`, `virtuozzo/virtuozzo7`, `oraclelinux/oraclelinux9`, `debian/bullseye`, `debian/bookworm`, `debian/trixie`, `proxmox/bullseye`, `proxmox/proxmox8`, `proxmox/proxmox9`,`netris/controller`, `netris/softgate_1g`, `netris/softgate_10g` or `netris/softgate_25g`. | |
9
+ | **os** | **String** | The server’s OS ID used when the server was created. Currently this field should be set to either `ubuntu/bionic`, `ubuntu/focal`, `ubuntu/jammy`, `ubuntu/jammy+pytorch`, `ubuntu/noble`, `centos/centos7`, `centos/centos8`, `windows/srv2019std`, `windows/srv2019dc`, `windows/srv2022std`, `windows/srv2022dc`, `windows/srv2025std`, `windows/srv2025dc`, `esxi/esxi70`, `esxi/esxi80`, `almalinux/almalinux8`, `almalinux/almalinux9`, `rockylinux/rockylinux8`, `rockylinux/rockylinux9`, `virtuozzo/virtuozzo7`, `oraclelinux/oraclelinux9`, `debian/bullseye`, `debian/bookworm`, `debian/trixie`, `proxmox/bullseye`, `proxmox/proxmox8`, `proxmox/proxmox9`,`netris/controller`, `netris/softgate_1g`, `netris/softgate_10g`, `netris/softgate_25g` or `ipxe`. | |
10
10
  | **install_default_ssh_keys** | **Boolean** | Whether or not to install SSH keys marked as default in addition to any SSH keys specified in this request. | [optional][default to true] |
11
11
  | **ssh_keys** | **Array<String>** | A list of SSH keys that will be installed on the server. | [optional] |
12
12
  | **ssh_key_ids** | **Array<String>** | A list of SSH key IDs that will be installed on the server in addition to any SSH keys specified in this request. | [optional] |
@@ -5,7 +5,7 @@
5
5
  | Name | Type | Description | Notes |
6
6
  | ---- | ---- | ----------- | ----- |
7
7
  | **id** | **String** | The network identifier. | |
8
- | **ips** | **Array<String>** | Configurable/configured IPs on the server.<br> At least 1 IP address is required. Valid IP formats include single IP addresses or IP ranges (IPv4 or IPv6). All IPs must be within the network's range.<br> Setting the `computeSlaacIp` field to `true` allows you to provide an empty array of IPs.<br> Additionally, setting the `force` query parameter to `true` allows you to:<ul> <li> Assign no specific IP addresses by designating an empty array of IPs. Note that at least one IP is required for the gateway address to be selected from this network. <li> Assign one or more IP addresses which are already configured on other resource(s) in network.</ul> | [optional] |
8
+ | **ips** | **Array<String>** | Configurable/configured IPs on the server.<br> At least 1 IP address is required. Valid IP formats include single IP addresses or IP ranges (IPv4 or IPv6). All IPs must be within the network's range.<br> Setting the `computeSlaacIp` field to `true` allows you to provide an empty array of IPs.<br> Referencing network as OS native network allows you to provide an empty array of IPs.<br> Additionally, setting the `force` query parameter to `true` allows you to:<ul> <li> Assign no specific IP addresses by designating an empty array of IPs. Note that at least one IP is required for the gateway address to be selected from this network. <li> Assign one or more IP addresses which are already configured on other resource(s) in network.</ul> | |
9
9
  | **status_description** | **String** | (Read-only) The status of the assignment to the network. | [optional][readonly] |
10
10
  | **compute_slaac_ip** | **Boolean** | (Write-only) Requests Stateless Address Autoconfiguration (SLAAC). Applicable for Network which contains IPv6 block(s). | [optional] |
11
11
  | **vlan_id** | **Integer** | (Read-only) The VLAN on which this network has been configured within the network switch. | [optional][readonly] |
data/docs/ServersApi.md CHANGED
@@ -20,6 +20,7 @@ All URIs are relative to *https://api.phoenixnap.com/bmc/v1*
20
20
  | [**servers_server_id_get**](ServersApi.md#servers_server_id_get) | **GET** /servers/{serverId} | Get server. |
21
21
  | [**servers_server_id_ip_blocks_ip_block_id_delete**](ServersApi.md#servers_server_id_ip_blocks_ip_block_id_delete) | **DELETE** /servers/{serverId}/network-configuration/ip-block-configurations/ip-blocks/{ipBlockId} | Unassign IP Block from Server. |
22
22
  | [**servers_server_id_ip_blocks_post**](ServersApi.md#servers_server_id_ip_blocks_post) | **POST** /servers/{serverId}/network-configuration/ip-block-configurations/ip-blocks | Assign IP Block to Server. |
23
+ | [**servers_server_id_os_configuration_ipxe_put**](ServersApi.md#servers_server_id_os_configuration_ipxe_put) | **PUT** /servers/{serverId}/os-configuration/ipxe | Updates the iPXE OS configuration. |
23
24
  | [**servers_server_id_patch**](ServersApi.md#servers_server_id_patch) | **PATCH** /servers/{serverId} | Patch a Server. |
24
25
  | [**servers_server_id_private_networks_patch**](ServersApi.md#servers_server_id_private_networks_patch) | **PATCH** /servers/{serverId}/network-configuration/private-network-configuration/private-networks/{privateNetworkId} | Updates the server's private network's IP addresses |
25
26
  | [**servers_server_id_private_networks_post**](ServersApi.md#servers_server_id_private_networks_post) | **POST** /servers/{serverId}/network-configuration/private-network-configuration/private-networks | Adds the server to a private network. |
@@ -121,7 +122,8 @@ end
121
122
 
122
123
  api_instance = BmcApi::ServersApi.new
123
124
  opts = {
124
- tag: ['inner_example'] # Array<String> | A list of query parameters related to tags in the form of tagName.tagValue
125
+ tag: ['inner_example'], # Array<String> | A list of query parameters related to tags in the form of tagName.tagValue
126
+ location: ['inner_example'] # Array<String> | Filters servers by server location
125
127
  }
126
128
 
127
129
  begin
@@ -156,6 +158,7 @@ end
156
158
  | Name | Type | Description | Notes |
157
159
  | ---- | ---- | ----------- | ----- |
158
160
  | **tag** | [**Array&lt;String&gt;**](String.md) | A list of query parameters related to tags in the form of tagName.tagValue | [optional] |
161
+ | **location** | [**Array&lt;String&gt;**](String.md) | Filters servers by server location | [optional] |
159
162
 
160
163
  ### Return type
161
164
 
@@ -530,7 +533,7 @@ end
530
533
 
531
534
  ## servers_server_id_actions_reboot_post
532
535
 
533
- > <ActionResult> servers_server_id_actions_reboot_post(server_id)
536
+ > <ActionResult> servers_server_id_actions_reboot_post(server_id, opts)
534
537
 
535
538
  Reboot server.
536
539
 
@@ -549,10 +552,13 @@ end
549
552
 
550
553
  api_instance = BmcApi::ServersApi.new
551
554
  server_id = '60473a6115e34466c9f8f083' # String | The server's ID.
555
+ opts = {
556
+ reboot_request: BmcApi::RebootRequest.new # RebootRequest | Configuration option to specify the reboot type: STANDARD or IPXE (default: STANDARD).
557
+ }
552
558
 
553
559
  begin
554
560
  # Reboot server.
555
- result = api_instance.servers_server_id_actions_reboot_post(server_id)
561
+ result = api_instance.servers_server_id_actions_reboot_post(server_id, opts)
556
562
  p result
557
563
  rescue BmcApi::ApiError => e
558
564
  puts "Error when calling ServersApi->servers_server_id_actions_reboot_post: #{e}"
@@ -563,12 +569,12 @@ end
563
569
 
564
570
  This returns an Array which contains the response data, status code and headers.
565
571
 
566
- > <Array(<ActionResult>, Integer, Hash)> servers_server_id_actions_reboot_post_with_http_info(server_id)
572
+ > <Array(<ActionResult>, Integer, Hash)> servers_server_id_actions_reboot_post_with_http_info(server_id, opts)
567
573
 
568
574
  ```ruby
569
575
  begin
570
576
  # Reboot server.
571
- data, status_code, headers = api_instance.servers_server_id_actions_reboot_post_with_http_info(server_id)
577
+ data, status_code, headers = api_instance.servers_server_id_actions_reboot_post_with_http_info(server_id, opts)
572
578
  p status_code # => 2xx
573
579
  p headers # => { ... }
574
580
  p data # => <ActionResult>
@@ -582,6 +588,7 @@ end
582
588
  | Name | Type | Description | Notes |
583
589
  | ---- | ---- | ----------- | ----- |
584
590
  | **server_id** | **String** | The server&#39;s ID. | |
591
+ | **reboot_request** | [**RebootRequest**](RebootRequest.md) | Configuration option to specify the reboot type: STANDARD or IPXE (default: STANDARD). | [optional] |
585
592
 
586
593
  ### Return type
587
594
 
@@ -593,7 +600,7 @@ end
593
600
 
594
601
  ### HTTP request headers
595
602
 
596
- - **Content-Type**: Not defined
603
+ - **Content-Type**: application/json
597
604
  - **Accept**: application/json
598
605
 
599
606
 
@@ -1161,6 +1168,77 @@ end
1161
1168
  - **Accept**: application/json
1162
1169
 
1163
1170
 
1171
+ ## servers_server_id_os_configuration_ipxe_put
1172
+
1173
+ > <OsConfigurationIPXE> servers_server_id_os_configuration_ipxe_put(server_id, os_configuration_ipxe)
1174
+
1175
+ Updates the iPXE OS configuration.
1176
+
1177
+ Updates the iPXE OS configuration by updating the URL and the native VLAN configuration.
1178
+
1179
+ ### Examples
1180
+
1181
+ ```ruby
1182
+ require 'time'
1183
+ require 'pnap_bmc_api'
1184
+ # setup authorization
1185
+ BmcApi.configure do |config|
1186
+ # Configure OAuth2 access token for authorization: OAuth2
1187
+ config.access_token = 'YOUR ACCESS TOKEN'
1188
+ end
1189
+
1190
+ api_instance = BmcApi::ServersApi.new
1191
+ server_id = '60473a6115e34466c9f8f083' # String | The server's ID.
1192
+ os_configuration_ipxe = BmcApi::OsConfigurationIPXE.new({url: 'https://example.com/boot.ipxe'}) # OsConfigurationIPXE |
1193
+
1194
+ begin
1195
+ # Updates the iPXE OS configuration.
1196
+ result = api_instance.servers_server_id_os_configuration_ipxe_put(server_id, os_configuration_ipxe)
1197
+ p result
1198
+ rescue BmcApi::ApiError => e
1199
+ puts "Error when calling ServersApi->servers_server_id_os_configuration_ipxe_put: #{e}"
1200
+ end
1201
+ ```
1202
+
1203
+ #### Using the servers_server_id_os_configuration_ipxe_put_with_http_info variant
1204
+
1205
+ This returns an Array which contains the response data, status code and headers.
1206
+
1207
+ > <Array(<OsConfigurationIPXE>, Integer, Hash)> servers_server_id_os_configuration_ipxe_put_with_http_info(server_id, os_configuration_ipxe)
1208
+
1209
+ ```ruby
1210
+ begin
1211
+ # Updates the iPXE OS configuration.
1212
+ data, status_code, headers = api_instance.servers_server_id_os_configuration_ipxe_put_with_http_info(server_id, os_configuration_ipxe)
1213
+ p status_code # => 2xx
1214
+ p headers # => { ... }
1215
+ p data # => <OsConfigurationIPXE>
1216
+ rescue BmcApi::ApiError => e
1217
+ puts "Error when calling ServersApi->servers_server_id_os_configuration_ipxe_put_with_http_info: #{e}"
1218
+ end
1219
+ ```
1220
+
1221
+ ### Parameters
1222
+
1223
+ | Name | Type | Description | Notes |
1224
+ | ---- | ---- | ----------- | ----- |
1225
+ | **server_id** | **String** | The server&#39;s ID. | |
1226
+ | **os_configuration_ipxe** | [**OsConfigurationIPXE**](OsConfigurationIPXE.md) | | |
1227
+
1228
+ ### Return type
1229
+
1230
+ [**OsConfigurationIPXE**](OsConfigurationIPXE.md)
1231
+
1232
+ ### Authorization
1233
+
1234
+ [OAuth2](../README.md#OAuth2)
1235
+
1236
+ ### HTTP request headers
1237
+
1238
+ - **Content-Type**: application/json
1239
+ - **Accept**: application/json
1240
+
1241
+
1164
1242
  ## servers_server_id_patch
1165
1243
 
1166
1244
  > <Server> servers_server_id_patch(server_id, server_patch)
@@ -1553,7 +1631,7 @@ end
1553
1631
 
1554
1632
  api_instance = BmcApi::ServersApi.new
1555
1633
  server_id = '60473a6115e34466c9f8f083' # String | The server's ID.
1556
- server_public_network = BmcApi::ServerPublicNetwork.new({id: '60473c2509268bc77fd06d29'}) # ServerPublicNetwork |
1634
+ server_public_network = BmcApi::ServerPublicNetwork.new({id: '60473c2509268bc77fd06d29', ips: ["182.16.0.146", "10.1.1.20 - 10.1.1.25", "2001: db8: : f", "2001: db8: : b - 2001: db8: : d"]}) # ServerPublicNetwork |
1557
1635
  opts = {
1558
1636
  force: true # Boolean | Query parameter controlling advanced features availability. Currently applicable for networking. It is advised to use with caution since it might lead to unhealthy setups.
1559
1637
  }
@@ -92,6 +92,7 @@ module BmcApi
92
92
  # List all servers owned by account.
93
93
  # @param [Hash] opts the optional parameters
94
94
  # @option opts [Array<String>] :tag A list of query parameters related to tags in the form of tagName.tagValue
95
+ # @option opts [Array<String>] :location Filters servers by server location
95
96
  # @return [Array<Server>]
96
97
  def servers_get(opts = {})
97
98
  data, _status_code, _headers = servers_get_with_http_info(opts)
@@ -102,6 +103,7 @@ module BmcApi
102
103
  # List all servers owned by account.
103
104
  # @param [Hash] opts the optional parameters
104
105
  # @option opts [Array<String>] :tag A list of query parameters related to tags in the form of tagName.tagValue
106
+ # @option opts [Array<String>] :location Filters servers by server location
105
107
  # @return [Array<(Array<Server>, Integer, Hash)>] Array<Server> data, response status code and response headers
106
108
  def servers_get_with_http_info(opts = {})
107
109
  if @api_client.config.debugging
@@ -113,6 +115,7 @@ module BmcApi
113
115
  # query parameters
114
116
  query_params = opts[:query_params] || {}
115
117
  query_params[:'tag'] = @api_client.build_collection_param(opts[:'tag'], :multi) if !opts[:'tag'].nil?
118
+ query_params[:'location'] = @api_client.build_collection_param(opts[:'location'], :multi) if !opts[:'location'].nil?
116
119
 
117
120
  # header parameters
118
121
  header_params = opts[:header_params] || {}
@@ -500,6 +503,7 @@ module BmcApi
500
503
  # Reboot specific server.
501
504
  # @param server_id [String] The server&#39;s ID.
502
505
  # @param [Hash] opts the optional parameters
506
+ # @option opts [RebootRequest] :reboot_request Configuration option to specify the reboot type: STANDARD or IPXE (default: STANDARD).
503
507
  # @return [ActionResult]
504
508
  def servers_server_id_actions_reboot_post(server_id, opts = {})
505
509
  data, _status_code, _headers = servers_server_id_actions_reboot_post_with_http_info(server_id, opts)
@@ -510,6 +514,7 @@ module BmcApi
510
514
  # Reboot specific server.
511
515
  # @param server_id [String] The server&#39;s ID.
512
516
  # @param [Hash] opts the optional parameters
517
+ # @option opts [RebootRequest] :reboot_request Configuration option to specify the reboot type: STANDARD or IPXE (default: STANDARD).
513
518
  # @return [Array<(ActionResult, Integer, Hash)>] ActionResult data, response status code and response headers
514
519
  def servers_server_id_actions_reboot_post_with_http_info(server_id, opts = {})
515
520
  if @api_client.config.debugging
@@ -529,12 +534,17 @@ module BmcApi
529
534
  header_params = opts[:header_params] || {}
530
535
  # HTTP header 'Accept' (if needed)
531
536
  header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
537
+ # HTTP header 'Content-Type'
538
+ content_type = @api_client.select_header_content_type(['application/json'])
539
+ if !content_type.nil?
540
+ header_params['Content-Type'] = content_type
541
+ end
532
542
 
533
543
  # form parameters
534
544
  form_params = opts[:form_params] || {}
535
545
 
536
546
  # http body (model)
537
- post_body = opts[:debug_body]
547
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'reboot_request'])
538
548
 
539
549
  # return_type
540
550
  return_type = opts[:debug_return_type] || 'ActionResult'
@@ -1124,6 +1134,80 @@ module BmcApi
1124
1134
  return data, status_code, headers
1125
1135
  end
1126
1136
 
1137
+ # Updates the iPXE OS configuration.
1138
+ # Updates the iPXE OS configuration by updating the URL and the native VLAN configuration.
1139
+ # @param server_id [String] The server&#39;s ID.
1140
+ # @param os_configuration_ipxe [OsConfigurationIPXE]
1141
+ # @param [Hash] opts the optional parameters
1142
+ # @return [OsConfigurationIPXE]
1143
+ def servers_server_id_os_configuration_ipxe_put(server_id, os_configuration_ipxe, opts = {})
1144
+ data, _status_code, _headers = servers_server_id_os_configuration_ipxe_put_with_http_info(server_id, os_configuration_ipxe, opts)
1145
+ data
1146
+ end
1147
+
1148
+ # Updates the iPXE OS configuration.
1149
+ # Updates the iPXE OS configuration by updating the URL and the native VLAN configuration.
1150
+ # @param server_id [String] The server&#39;s ID.
1151
+ # @param os_configuration_ipxe [OsConfigurationIPXE]
1152
+ # @param [Hash] opts the optional parameters
1153
+ # @return [Array<(OsConfigurationIPXE, Integer, Hash)>] OsConfigurationIPXE data, response status code and response headers
1154
+ def servers_server_id_os_configuration_ipxe_put_with_http_info(server_id, os_configuration_ipxe, opts = {})
1155
+ if @api_client.config.debugging
1156
+ @api_client.config.logger.debug 'Calling API: ServersApi.servers_server_id_os_configuration_ipxe_put ...'
1157
+ end
1158
+ # verify the required parameter 'server_id' is set
1159
+ if @api_client.config.client_side_validation && server_id.nil?
1160
+ fail ArgumentError, "Missing the required parameter 'server_id' when calling ServersApi.servers_server_id_os_configuration_ipxe_put"
1161
+ end
1162
+ # verify the required parameter 'os_configuration_ipxe' is set
1163
+ if @api_client.config.client_side_validation && os_configuration_ipxe.nil?
1164
+ fail ArgumentError, "Missing the required parameter 'os_configuration_ipxe' when calling ServersApi.servers_server_id_os_configuration_ipxe_put"
1165
+ end
1166
+ # resource path
1167
+ local_var_path = '/servers/{serverId}/os-configuration/ipxe'.sub('{' + 'serverId' + '}', CGI.escape(server_id.to_s))
1168
+
1169
+ # query parameters
1170
+ query_params = opts[:query_params] || {}
1171
+
1172
+ # header parameters
1173
+ header_params = opts[:header_params] || {}
1174
+ # HTTP header 'Accept' (if needed)
1175
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1176
+ # HTTP header 'Content-Type'
1177
+ content_type = @api_client.select_header_content_type(['application/json'])
1178
+ if !content_type.nil?
1179
+ header_params['Content-Type'] = content_type
1180
+ end
1181
+
1182
+ # form parameters
1183
+ form_params = opts[:form_params] || {}
1184
+
1185
+ # http body (model)
1186
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(os_configuration_ipxe)
1187
+
1188
+ # return_type
1189
+ return_type = opts[:debug_return_type] || 'OsConfigurationIPXE'
1190
+
1191
+ # auth_names
1192
+ auth_names = opts[:debug_auth_names] || ['OAuth2']
1193
+
1194
+ new_options = opts.merge(
1195
+ :operation => :"ServersApi.servers_server_id_os_configuration_ipxe_put",
1196
+ :header_params => header_params,
1197
+ :query_params => query_params,
1198
+ :form_params => form_params,
1199
+ :body => post_body,
1200
+ :auth_names => auth_names,
1201
+ :return_type => return_type
1202
+ )
1203
+
1204
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
1205
+ if @api_client.config.debugging
1206
+ @api_client.config.logger.debug "API called: ServersApi#servers_server_id_os_configuration_ipxe_put\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1207
+ end
1208
+ return data, status_code, headers
1209
+ end
1210
+
1127
1211
  # Patch a Server.
1128
1212
  # Any changes to the hostname or description using the BMC API will reflect solely in the BMC API and portal. The changes are intended to keep the BMC data up to date with your server. We do not have access to your server's settings. Local changes to the server's hostname will not be reflected in the API or portal.
1129
1213
  # @param server_id [String] The server&#39;s ID.
@@ -38,6 +38,8 @@ module BmcApi
38
38
 
39
39
  attr_accessor :cloud_init
40
40
 
41
+ attr_accessor :i_pxe
42
+
41
43
  # Attribute mapping from ruby-style variable name to JSON key.
42
44
  def self.attribute_map
43
45
  {
@@ -49,7 +51,8 @@ module BmcApi
49
51
  :'management_access_allowed_ips' => :'managementAccessAllowedIps',
50
52
  :'install_os_to_ram' => :'installOsToRam',
51
53
  :'esxi' => :'esxi',
52
- :'cloud_init' => :'cloudInit'
54
+ :'cloud_init' => :'cloudInit',
55
+ :'i_pxe' => :'iPXE'
53
56
  }
54
57
  end
55
58
 
@@ -74,7 +77,8 @@ module BmcApi
74
77
  :'management_access_allowed_ips' => :'Array<String>',
75
78
  :'install_os_to_ram' => :'Boolean',
76
79
  :'esxi' => :'EsxiOsConfiguration',
77
- :'cloud_init' => :'OsConfigurationCloudInit'
80
+ :'cloud_init' => :'OsConfigurationCloudInit',
81
+ :'i_pxe' => :'OsConfigurationIPXE'
78
82
  }
79
83
  end
80
84
 
@@ -139,6 +143,10 @@ module BmcApi
139
143
  if attributes.key?(:'cloud_init')
140
144
  self.cloud_init = attributes[:'cloud_init']
141
145
  end
146
+
147
+ if attributes.key?(:'i_pxe')
148
+ self.i_pxe = attributes[:'i_pxe']
149
+ end
142
150
  end
143
151
 
144
152
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -188,7 +196,8 @@ module BmcApi
188
196
  management_access_allowed_ips == o.management_access_allowed_ips &&
189
197
  install_os_to_ram == o.install_os_to_ram &&
190
198
  esxi == o.esxi &&
191
- cloud_init == o.cloud_init
199
+ cloud_init == o.cloud_init &&
200
+ i_pxe == o.i_pxe
192
201
  end
193
202
 
194
203
  # @see the `==` method
@@ -200,7 +209,7 @@ module BmcApi
200
209
  # Calculates hash code according to all attributes.
201
210
  # @return [Integer] Hash code
202
211
  def hash
203
- [netris_controller, netris_softgate, windows, root_password, management_ui_url, management_access_allowed_ips, install_os_to_ram, esxi, cloud_init].hash
212
+ [netris_controller, netris_softgate, windows, root_password, management_ui_url, management_access_allowed_ips, install_os_to_ram, esxi, cloud_init, i_pxe].hash
204
213
  end
205
214
 
206
215
  # Builds the object from hash