Class: Katello::Resources::Candlepin::UpstreamJob
- Inherits:
-
UpstreamCandlepinResource
- Object
- HttpResource
- CandlepinResource
- UpstreamCandlepinResource
- Katello::Resources::Candlepin::UpstreamJob
- Defined in:
- app/lib/katello/resources/candlepin/upstream_job.rb
Constant Summary collapse
- NOT_FINISHED_STATES =
%w(CREATED WAITING PENDING RUNNING).freeze
- API_URL =
'https://subscription.rhsm.redhat.com/subscription'.freeze
- SUBSCRIPTION_PATH =
'/subscription'.freeze
Constants inherited from HttpResource
Instance Attribute Summary
Attributes inherited from HttpResource
Class Method Summary collapse
- .get(id, upstream) ⇒ Object
- .not_finished?(job) ⇒ Boolean
- .path(id = nil) ⇒ Object
- .subscription_path(upstream_api_url) ⇒ Object
Methods inherited from UpstreamCandlepinResource
client_cert, client_key, default_headers, json_resource, resource, rest_client, site, upstream_api_uri, upstream_consumer, upstream_consumer_id, upstream_id_cert, upstream_owner_id
Methods included from Util::HttpProxy
#proxy, #proxy_host, #proxy_port, #proxy_scheme, #proxy_uri
Methods inherited from CandlepinResource
default_headers, fetch_paged, included_list, logger, name_to_key, process_response, raise_rest_client_exception
Methods inherited from HttpResource
#[], #[]=, hash_to_query, #initialize, issue_request, join_path, logger, process_response, raise_rest_client_exception, rest_client
Methods included from Concerns::FilterSensitiveData
Constructor Details
This class inherits a constructor from Katello::HttpResource
Class Method Details
.get(id, upstream) ⇒ Object
14 15 16 17 18 19 20 |
# File 'app/lib/katello/resources/candlepin/upstream_job.rb', line 14 def get(id, upstream) url = subscription_path(ENV['REDHAT_RHSM_API_URL']) || subscription_path(upstream['apiUrl']) || API_URL response = Resources::Candlepin::UpstreamConsumer.start_upstream_export("#{url}#{path(id)}", upstream['idCert']['cert'], upstream['idCert']['key'], nil) job = JSON.parse(response) job.with_indifferent_access end |
.not_finished?(job) ⇒ Boolean
10 11 12 |
# File 'app/lib/katello/resources/candlepin/upstream_job.rb', line 10 def not_finished?(job) NOT_FINISHED_STATES.include?(job[:state]) end |
.path(id = nil) ⇒ Object
22 23 24 |
# File 'app/lib/katello/resources/candlepin/upstream_job.rb', line 22 def path(id = nil) "/jobs/#{id}" end |
.subscription_path(upstream_api_url) ⇒ Object
26 27 28 29 30 31 |
# File 'app/lib/katello/resources/candlepin/upstream_job.rb', line 26 def subscription_path(upstream_api_url) return if upstream_api_url.blank? uri = URI.parse(upstream_api_url) # https://subscription.rhsm.redhat.com/subscription/consumers/ uri.path = SUBSCRIPTION_PATH # https://subscription.rhsm.redhat.com/subscription uri.to_s end |