Hello community,
here is the log from the commit of package rubygem-fog-libvirt for
openSUSE:Factory checked in at 2019-10-28 16:59:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-fog-libvirt (Old)
and /work/SRC/openSUSE:Factory/.rubygem-fog-libvirt.new.2990 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-fog-libvirt"
Mon Oct 28 16:59:41 2019 rev:2 rq:743516 version:0.7.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-fog-libvirt/rubygem-fog-libvirt.changes
2019-07-02 10:37:47.246526265 +0200
+++
/work/SRC/openSUSE:Factory/.rubygem-fog-libvirt.new.2990/rubygem-fog-libvirt.changes
2019-10-28 17:00:27.821764880 +0100
@@ -1,0 +2,11 @@
+Mon Oct 28 13:22:00 UTC 2019 - Dan Čermák <[email protected]>
+
+- updated to version 0.7.0
+ - Add creation of RBD volumes
+ - Handle domain volumes with disk source not being a file
+ - Add hugepages support
+ - Add possibility to use auth_usage instead of auth_uuid
+ - Add qemu-guest-agent channel
+ - Handle blank text in allocation
+
+-------------------------------------------------------------------
Old:
----
fog-libvirt-0.6.0.gem
New:
----
fog-libvirt-0.7.0.gem
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ rubygem-fog-libvirt.spec ++++++
--- /var/tmp/diff_new_pack.BvKEuF/_old 2019-10-28 17:00:28.409765587 +0100
+++ /var/tmp/diff_new_pack.BvKEuF/_new 2019-10-28 17:00:28.413765592 +0100
@@ -24,15 +24,15 @@
#
Name: rubygem-fog-libvirt
-Version: 0.6.0
+Version: 0.7.0
Release: 0
%define mod_name fog-libvirt
%define mod_full_name %{mod_name}-%{version}
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-BuildRequires: ruby-macros >= 5
BuildRequires: %{ruby >= 2.0.0}
BuildRequires: %{rubygem gem2rpm}
BuildRequires: %{rubygem rdoc > 3.10}
+BuildRequires: ruby-macros >= 5
Url: https://github.com/fog/fog-libvirt
Source: https://rubygems.org/gems/%{mod_full_name}.gem
Source1: gem2rpm.yml
++++++ fog-libvirt-0.6.0.gem -> fog-libvirt-0.7.0.gem ++++++
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/fog/libvirt/models/compute/README.md
new/lib/fog/libvirt/models/compute/README.md
--- old/lib/fog/libvirt/models/compute/README.md 2019-01-31
17:06:40.000000000 +0100
+++ new/lib/fog/libvirt/models/compute/README.md 2019-10-28
13:28:37.000000000 +0100
@@ -26,6 +26,19 @@
- To check the connection you need to override your libvirt socket location in
the URI
- "qemu+ssh://patrick@myserver/system?socket=/var/run/libvirt/libvirt-sock"
+## Ceph RBD volumes
+To configure Ceph RBD volumes, the file ``/etc/foreman/ceph.conf`` is used.
+After adding the authentication key to a libvirt secret, it can be configured
as follows:
+```
+monitor=mon001.example.com,mon002.example.com,mon003.example.com
+port=6789
+libvirt_ceph_pool=rbd_pool_name
+auth_username=libvirt
+auth_uuid=uuid_of_libvirt_secret
+```
+For more recent versions of libvirt which support using the secret by name
(`usage` attribute in the `secret` tag),
+you can also drop `auth_uuid` and specify `auth_usage` instead. If both are
specified, `auth_uuid` will be preferred for maximum compatibility.
+
## Configuration
The URI can be configured in two ways:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/fog/libvirt/models/compute/server.rb
new/lib/fog/libvirt/models/compute/server.rb
--- old/lib/fog/libvirt/models/compute/server.rb 2019-01-31
17:06:40.000000000 +0100
+++ new/lib/fog/libvirt/models/compute/server.rb 2019-10-28
13:28:37.000000000 +0100
@@ -28,6 +28,8 @@
attribute :boot_order
attribute :display
attribute :cpu
+ attribute :hugepages
+ attribute :guest_agent
attribute :state
@@ -477,7 +479,9 @@
:network_bridge_name => "br0",
:boot_order => %w[hd cdrom network],
:display => default_display,
- :cpu => {}
+ :cpu => {},
+ :hugepages => false,
+ :guest_agent => true,
}
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/lib/fog/libvirt/models/compute/templates/server.xml.erb
new/lib/fog/libvirt/models/compute/templates/server.xml.erb
--- old/lib/fog/libvirt/models/compute/templates/server.xml.erb 2019-01-31
17:06:40.000000000 +0100
+++ new/lib/fog/libvirt/models/compute/templates/server.xml.erb 2019-10-28
13:28:37.000000000 +0100
@@ -1,6 +1,11 @@
<domain type='<%= domain_type %>'>
<name><%= name %></name>
<memory><%= memory_size %></memory>
+<% if hugepages -%>
+ <memoryBacking>
+ <hugepages/>
+ </memoryBacking>
+<% end -%>
<vcpu><%= cpus %></vcpu>
<os>
<type arch='<%= arch %>'><%= os_type %></type>
@@ -32,13 +37,42 @@
<% end -%>
<clock offset='utc'/>
<devices>
+<% args = {}
+ if File.file?('/etc/foreman/ceph.conf')
+ File.readlines('/etc/foreman/ceph.conf').each do |line|
+ pair = line.strip.split("=")
+ key = pair[0]
+ value = pair[1]
+ args[key] = value
+ end
+ end
+%>
<% volumes.each do |vol| -%>
+ <% if File.file?('/etc/foreman/ceph.conf') &&
vol.pool_name.include?(args["libvirt_ceph_pool"]) %>
+ <disk type='network' device='disk'>
+ <driver name='qemu' type='<%= vol.format_type %>' cache='writeback'
discard='unmap'/>
+ <source protocol='rbd' name='<%= vol.path %>'>
+ <% args["monitor"].split(",").each do |mon| %>
+ <host name='<%= mon %>' port='<%= args["port"] %>'/>
+ <% end %>
+ </source>
+ <auth username='<%= args["auth_username"] %>'>
+ <% if args.key?("auth_uuid") -%>
+ <secret type='ceph' uuid='<%= args["auth_uuid"] %>'/>
+ <% else -%>
+ <secret type='ceph' usage='<%= args["auth_usage"] %>'/>
+ <% end -%>
+ </auth>
+ <target dev='sd<%= ('a'..'z').to_a[volumes.index(vol)] %>' bus='scsi'/>
+ </disk>
+ <% else %>
<disk type='file' device='disk'>
<driver name='qemu' type='<%= vol.format_type %>'/>
<source file='<%= vol.path %>'/>
<%# we need to ensure a unique target dev -%>
<target dev='vd<%= ('a'..'z').to_a[volumes.index(vol)] %>' bus='virtio'/>
</disk>
+ <% end %>
<% end -%>
<% if iso_file -%>
<disk type='file' device='cdrom'>
@@ -55,6 +89,11 @@
<model type='<%= nic.model %>'/>
</interface>
<% end -%>
+<% if guest_agent -%>
+ <channel type='unix'>
+ <target type='virtio' name='org.qemu.guest_agent.0'/>
+ </channel>
+<% end -%>
<serial type='pty'>
<target port='0'/>
</serial>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/fog/libvirt/models/compute/volume.rb
new/lib/fog/libvirt/models/compute/volume.rb
--- old/lib/fog/libvirt/models/compute/volume.rb 2019-01-31
17:06:40.000000000 +0100
+++ new/lib/fog/libvirt/models/compute/volume.rb 2019-10-28
13:28:37.000000000 +0100
@@ -114,14 +114,12 @@
end
def split_size_unit(text)
- if text.kind_of? Integer
- # if text is an integer, match will fail
- size = text
- unit = 'G'
- else
- matcher = text.match(/(\d+)(.+)/)
+ if (text.kind_of? String) && (matcher = text.match(/(\d+)(.+)/))
size = matcher[1]
unit = matcher[2]
+ else
+ size = text.to_i
+ unit = "G"
end
[size, unit]
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/fog/libvirt/requests/compute/list_domains.rb
new/lib/fog/libvirt/requests/compute/list_domains.rb
--- old/lib/fog/libvirt/requests/compute/list_domains.rb 2019-01-31
17:06:40.000000000 +0100
+++ new/lib/fog/libvirt/requests/compute/list_domains.rb 2019-10-28
13:28:37.000000000 +0100
@@ -39,7 +39,13 @@
end
def domain_volumes xml
- xml_elements(xml, "domain/devices/disk/source", "file")
+ vols_by_file = xml_elements(xml, "domain/devices/disk/source",
"file")
+ vols_by_name = xml_elements(xml, "domain/devices/disk/source",
"name")
+ vols = []
+ vols_by_file.zip(vols_by_name).each do |by_file,by_name|
+ vols.push(by_file.nil? ? by_name : by_file)
+ end
+ vols
end
def boot_order xml
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/fog/libvirt/version.rb
new/lib/fog/libvirt/version.rb
--- old/lib/fog/libvirt/version.rb 2019-01-31 17:06:40.000000000 +0100
+++ new/lib/fog/libvirt/version.rb 2019-10-28 13:28:37.000000000 +0100
@@ -1,5 +1,5 @@
module Fog
module Libvirt
- VERSION = '0.6.0'
+ VERSION = '0.7.0'
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata 2019-01-31 17:06:40.000000000 +0100
+++ new/metadata 2019-10-28 13:28:37.000000000 +0100
@@ -1,14 +1,14 @@
--- !ruby/object:Gem::Specification
name: fog-libvirt
version: !ruby/object:Gem::Version
- version: 0.6.0
+ version: 0.7.0
platform: ruby
authors:
- geemus (Wesley Beary)
autorequire:
bindir: bin
cert_chain: []
-date: 2019-01-31 00:00:00.000000000 Z
+date: 2019-10-28 00:00:00.000000000 Z
dependencies:
- !ruby/object:Gem::Dependency
name: fog-core
@@ -326,8 +326,7 @@
- !ruby/object:Gem::Version
version: '0'
requirements: []
-rubyforge_project:
-rubygems_version: 2.6.14.1
+rubygems_version: 3.0.3
signing_key:
specification_version: 2
summary: Module for the 'fog' gem to support libvirt
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/tests/libvirt/models/compute/server_tests.rb
new/tests/libvirt/models/compute/server_tests.rb
--- old/tests/libvirt/models/compute/server_tests.rb 2019-01-31
17:06:40.000000000 +0100
+++ new/tests/libvirt/models/compute/server_tests.rb 2019-10-28
13:28:37.000000000 +0100
@@ -42,6 +42,7 @@
:volumes,
:active,
:boot_order,
+ :hugepages,
:state]
tests("The server model should respond to") do
attributes.each do |attribute|