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 HTTP/1.1
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>
15697 15698 15699 |
# File 'lib/ovirtsdk4/services.rb', line 15697 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.
15818 15819 15820 |
# File 'lib/ovirtsdk4/services.rb', line 15818 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.
15827 15828 15829 |
# File 'lib/ovirtsdk4/services.rb', line 15827 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 HTTP/1.1
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 HTTP/1.1
|
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.
|
15744 15745 15746 |
# File 'lib/ovirtsdk4/services.rb', line 15744 def remove(opts = {}) internal_remove(REMOVE, opts) end |
#service(path) ⇒ Service
Locates the service corresponding to the given path.
15847 15848 15849 15850 15851 15852 15853 15854 15855 15856 15857 15858 15859 15860 15861 15862 15863 15864 15865 15866 15867 15868 15869 15870 |
# File 'lib/ovirtsdk4/services.rb', line 15847 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 HTTP/1.1
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 HTTP/1.1
With a request body like this:
<network>
<mtu>1500</mtu>
</network>
|
Note
|
Updating external networks is not propagated to the provider. |
15809 15810 15811 |
# File 'lib/ovirtsdk4/services.rb', line 15809 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.
15836 15837 15838 |
# File 'lib/ovirtsdk4/services.rb', line 15836 def vnic_profiles_service @vnic_profiles_service ||= AssignedVnicProfilesService.new(self, 'vnicprofiles') end |