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>
15770 15771 15772 |
# File 'lib/ovirtsdk4/services.rb', line 15770 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.
15897 15898 15899 |
# File 'lib/ovirtsdk4/services.rb', line 15897 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.
15906 15907 15908 |
# File 'lib/ovirtsdk4/services.rb', line 15906 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.
|
15819 15820 15821 |
# File 'lib/ovirtsdk4/services.rb', line 15819 def remove(opts = {}) internal_remove(REMOVE, opts) end |
#service(path) ⇒ Service
Locates the service corresponding to the given path.
15926 15927 15928 15929 15930 15931 15932 15933 15934 15935 15936 15937 15938 15939 15940 15941 15942 15943 15944 15945 15946 15947 15948 15949 |
# File 'lib/ovirtsdk4/services.rb', line 15926 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. |
15888 15889 15890 |
# File 'lib/ovirtsdk4/services.rb', line 15888 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.
15915 15916 15917 |
# File 'lib/ovirtsdk4/services.rb', line 15915 def vnic_profiles_service @vnic_profiles_service ||= AssignedVnicProfilesService.new(self, 'vnicprofiles') end |