diff --git a/.sync.yml b/.sync.yml index 8974464..8158496 100644 --- a/.sync.yml +++ b/.sync.yml @@ -12,4 +12,6 @@ Gemfile: ':development': - gem: 'puppet-blacksmith' - gem: 'github_changelog_generator' - + - gem: 'rexml' + version: '~> 3.2' + condition: "Gem::Version.new(RUBY_VERSION) >= Gem::Version.new('3')" diff --git a/Gemfile b/Gemfile index 5b241e2..4a398ec 100644 --- a/Gemfile +++ b/Gemfile @@ -37,6 +37,7 @@ group :development do gem "rb-readline", '= 0.5.5', require: false, platforms: [:mswin, :mingw, :x64_mingw] gem "puppet-blacksmith", require: false gem "github_changelog_generator", require: false + gem "rexml", '~> 3.2', require: false if Gem::Version.new(RUBY_VERSION) >= Gem::Version.new('3') end group :system_tests do gem "puppet_litmus", '~> 1.0', require: false, platforms: [:ruby, :x64_mingw] diff --git a/README.md b/README.md index d4a5c19..daccaf6 100644 --- a/README.md +++ b/README.md @@ -17,6 +17,13 @@ 5. [Contributing](#contributing) ## Upgrade warnings: + +Upgrading to puppet 8 comes with Ruby 3, which doesn't have the `rexml` gem bundled. +It should be [installed on the puppetserver](https://www.puppet.com/docs/puppet/7/server/gems.html#installing-and-removing-gems). +``` +sudo puppetserver gem install rexml +``` + Upgrade to version 5.x.x introduced types/providers for network, nwfilter and domains replacing the execs used before version 5.0.0. To compare the XML's generated with puppet and the actual running XML's generated with virsh they are sorted which leads to display lots of diff --git a/lib/puppet/type/libvirt_domain.rb b/lib/puppet/type/libvirt_domain.rb index 9e4a1bd..aa151ea 100644 --- a/lib/puppet/type/libvirt_domain.rb +++ b/lib/puppet/type/libvirt_domain.rb @@ -1,5 +1,7 @@ # frozen_string_literal: true +require 'puppet/parameter/boolean' + Puppet::Type.newtype(:libvirt_domain) do @doc = 'ensures a persistent domain (vm) (transient domains are ignored) ' diff --git a/lib/puppet/type/libvirt_network.rb b/lib/puppet/type/libvirt_network.rb index 7c46939..a8f123c 100644 --- a/lib/puppet/type/libvirt_network.rb +++ b/lib/puppet/type/libvirt_network.rb @@ -1,5 +1,7 @@ # frozen_string_literal: true +require 'puppet/parameter/boolean' + Puppet::Type.newtype(:libvirt_network) do @doc = 'ensures a persistent network (transient networks are ignored) ' diff --git a/lib/puppet/type/libvirt_nwfilter.rb b/lib/puppet/type/libvirt_nwfilter.rb index 186a914..21a4e46 100644 --- a/lib/puppet/type/libvirt_nwfilter.rb +++ b/lib/puppet/type/libvirt_nwfilter.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true -# +require 'puppet/parameter/boolean' Puppet::Type.newtype(:libvirt_nwfilter) do @doc = 'ensures a nwfilter diff --git a/metadata.json b/metadata.json index 2216a88..3814b4a 100644 --- a/metadata.json +++ b/metadata.json @@ -60,7 +60,7 @@ "requirements": [ { "name": "puppet", - "version_requirement": ">=5.0.0 < 8.0.0" + "version_requirement": ">=5.0.0 < 9.0.0" } ], "tags": [