Sha256: 6a606a2217b554c8cd2a77052f7fd75424d817a6a27e7887d2f2f9e285cf6588

Contents?: true

Size: 1.05 KB

Versions: 291

Compression:

Stored size: 1.05 KB

Contents

require 'puppet/indirector/rest'
require 'semantic_puppet'

class Puppet::Transaction::Report::Rest < Puppet::Indirector::REST
  desc "Get server report over HTTP via REST."
  use_server_setting(:report_server)
  use_port_setting(:report_port)
  use_srv_service(:report)

  def handle_response(request, response)
    if !response.is_a?(Net::HTTPSuccess)
      server_version = response[Puppet::Network::HTTP::HEADER_PUPPET_VERSION]
      if server_version &&
         SemanticPuppet::Version.parse(server_version).major < Puppet::Indirector::REST::MAJOR_VERSION_JSON_DEFAULT &&
         Puppet[:preferred_serialization_format] != 'pson'
        format = Puppet[:preferred_serialization_format]
        raise Puppet::Error.new(_("Server version %{version} does not accept reports in '%{format}', use `preferred_serialization_format=pson`") % {version: server_version, format: format})
      end
    end
  end

  private

  def deserialize_save(content_type, body)
    format = Puppet::Network::FormatHandler.format_for(content_type)
    format.intern(Array, body)
  end
end

Version data entries

291 entries across 291 versions & 2 rubygems

Version Path
puppet-5.5.22 lib/puppet/indirector/report/rest.rb
puppet-5.5.22-x86-mingw32 lib/puppet/indirector/report/rest.rb
puppet-5.5.22-x64-mingw32 lib/puppet/indirector/report/rest.rb
puppet-5.5.22-universal-darwin lib/puppet/indirector/report/rest.rb
puppet-5.5.21 lib/puppet/indirector/report/rest.rb
puppet-5.5.21-x86-mingw32 lib/puppet/indirector/report/rest.rb
puppet-5.5.21-x64-mingw32 lib/puppet/indirector/report/rest.rb
puppet-5.5.21-universal-darwin lib/puppet/indirector/report/rest.rb
puppet-5.5.20 lib/puppet/indirector/report/rest.rb
puppet-5.5.20-x86-mingw32 lib/puppet/indirector/report/rest.rb
puppet-5.5.20-x64-mingw32 lib/puppet/indirector/report/rest.rb
puppet-5.5.20-universal-darwin lib/puppet/indirector/report/rest.rb
puppet-5.5.19 lib/puppet/indirector/report/rest.rb
puppet-5.5.19-x86-mingw32 lib/puppet/indirector/report/rest.rb
puppet-5.5.19-x64-mingw32 lib/puppet/indirector/report/rest.rb
puppet-5.5.19-universal-darwin lib/puppet/indirector/report/rest.rb
puppet-6.13.0 lib/puppet/indirector/report/rest.rb
puppet-6.13.0-x86-mingw32 lib/puppet/indirector/report/rest.rb
puppet-6.13.0-x64-mingw32 lib/puppet/indirector/report/rest.rb
puppet-6.13.0-universal-darwin lib/puppet/indirector/report/rest.rb