Class: OvirtSDK4::NetworkService
- Defined in:
- lib/ovirtsdk4/services.rb,
lib/ovirtsdk4/services.rb
Instance Method Summary collapse
-
#get(opts = {}) ⇒ Network
Gets a logical network.
-
#network_labels_service ⇒ NetworkLabelsService
Reference to the service that manages the network labels assigned to this network.
-
#permissions_service ⇒ AssignedPermissionsService
Reference to the service that manages the permissions assigned to this network.
-
#remove(opts = {}) ⇒ Object
Removes a logical network, or the association of a logical network to a data center.
-
#service(path) ⇒ Service
Locates the service corresponding to the given path.
-
#update(network, opts = {}) ⇒ Network
Updates a logical network.
-
#vnic_profiles_service ⇒ AssignedVnicProfilesService
Reference to the service that manages the vNIC profiles assigned to this network.
Methods inherited from Service
Instance Method Details
#get(opts = {}) ⇒ Network
Gets a logical network.
For example:
GET /ovirt-engine/api/networks/123
Will respond:
<network href="/ovirt-engine/api/networks/123" id="123">
<name>ovirtmgmt</name>
<description>Default Management Network</description>
<link href="/ovirt-engine/api/networks/123/permissions" rel="permissions"/>
<link href="/ovirt-engine/api/networks/123/vnicprofiles" rel="vnicprofiles"/>
<link href="/ovirt-engine/api/networks/123/networklabels" rel="networklabels"/>
<mtu>0</mtu>
<stp>false</stp>
<usages>
<usage>vm</usage>
</usages>
<data_center href="/ovirt-engine/api/datacenters/456" id="456"/>
</network>
15906 15907 15908 |
# File 'lib/ovirtsdk4/services.rb', line 15906 def get(opts = {}) internal_get(GET, opts) end |
#network_labels_service ⇒ NetworkLabelsService
Reference to the service that manages the network labels assigned to this network.
16033 16034 16035 |
# File 'lib/ovirtsdk4/services.rb', line 16033 def network_labels_service @network_labels_service ||= NetworkLabelsService.new(self, 'networklabels') end |
#permissions_service ⇒ AssignedPermissionsService
Reference to the service that manages the permissions assigned to this network.
16042 16043 16044 |
# File 'lib/ovirtsdk4/services.rb', line 16042 def @permissions_service ||= AssignedPermissionsService.new(self, 'permissions') end |
#remove(opts = {}) ⇒ Object
Removes a logical network, or the association of a logical network to a data center.
For example, to remove the logical network 123
send a request like this:
DELETE /ovirt-engine/api/networks/123
Each network is bound exactly to one data center. So if we disassociate network with data center it has the same
result as if we would just remove that network. However it might be more specific to say we’re removing network
456
of data center 123
.
For example, to remove the association of network 456
to data center 123
send a request like this:
DELETE /ovirt-engine/api/datacenters/123/networks/456
Note
|
To remove an external logical network, the network has to be removed directly from its provider by
OpenStack Networking API.
The entity representing the external network inside product-name is removed automatically,
if auto_sync is enabled for the provider,
otherwise the entity has to be removed using this method.
|
15955 15956 15957 |
# File 'lib/ovirtsdk4/services.rb', line 15955 def remove(opts = {}) internal_remove(REMOVE, opts) end |
#service(path) ⇒ Service
Locates the service corresponding to the given path.
16062 16063 16064 16065 16066 16067 16068 16069 16070 16071 16072 16073 16074 16075 16076 16077 16078 16079 16080 16081 16082 16083 16084 16085 |
# File 'lib/ovirtsdk4/services.rb', line 16062 def service(path) if path.nil? || path == '' return self end if path == 'networklabels' return network_labels_service end if path.start_with?('networklabels/') return network_labels_service.service(path[14..-1]) end if path == 'permissions' return end if path.start_with?('permissions/') return .service(path[12..-1]) end if path == 'vnicprofiles' return vnic_profiles_service end if path.start_with?('vnicprofiles/') return vnic_profiles_service.service(path[13..-1]) end raise Error.new("The path \"#{path}\" doesn't correspond to any service") end |
#update(network, opts = {}) ⇒ Network
Updates a logical network.
The name
, description
, ip
, vlan
, stp
and display
attributes can be updated.
For example, to update the description of the logical network 123
send a request like this:
PUT /ovirt-engine/api/networks/123
With a request body like this:
<network>
<description>My updated description</description>
</network>
The maximum transmission unit of a network is set using a PUT request to
specify the integer value of the mtu
attribute.
For example, to set the maximum transmission unit send a request like this:
PUT /ovirt-engine/api/datacenters/123/networks/456
With a request body like this:
<network>
<mtu>1500</mtu>
</network>
Note
|
Updating external networks is not propagated to the provider. |
16024 16025 16026 |
# File 'lib/ovirtsdk4/services.rb', line 16024 def update(network, opts = {}) internal_update(network, Network, UPDATE, opts) end |
#vnic_profiles_service ⇒ AssignedVnicProfilesService
Reference to the service that manages the vNIC profiles assigned to this network.
16051 16052 16053 |
# File 'lib/ovirtsdk4/services.rb', line 16051 def vnic_profiles_service @vnic_profiles_service ||= AssignedVnicProfilesService.new(self, 'vnicprofiles') end |