Sha256: 3e4bfa397f7f00e177a05332ac19f46873d4d22ea4fa1d2fab15cf5d1c691721

Contents?: true

Size: 609 Bytes

Versions: 1

Compression:

Stored size: 609 Bytes

Contents

# frozen_string_literal: true

require 'net/http'
require 'json'

# Root Module for Namespace management
module RevbitsPamCicd
  # Module responsible for fetching data from 'PAM'.
  class HTTP
    class << self
      def get(uri, request, req_options)
        response = Net::HTTP.start(uri.hostname, uri.port, req_options) do |http|
          http.request(request)
        end

        unless response.code.match?(%r{^2})
          raise Net::HTTPError.new("Server error: #{JSON.parse(response.body).dig('errorMessage')}", response)
        end

        JSON.parse(response.body)
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
revbits_pam_cicd-0.1.2 lib/revbits_pam_cicd/http.rb