Class: Proxy::ContainerGateway::ForemanApi
- Inherits:
-
Object
- Object
- Proxy::ContainerGateway::ForemanApi
- Defined in:
- lib/smart_proxy_container_gateway/foreman_api.rb
Instance Method Summary collapse
- #fetch_token(auth_header, params) ⇒ Object
- #fetch_user_repositories(auth_header, params) ⇒ Object
- #process_params(params_in) ⇒ Object
- #registry_request(auth_header, params, suffix) ⇒ Object
Instance Method Details
#fetch_token(auth_header, params) ⇒ Object
25 26 27 |
# File 'lib/smart_proxy_container_gateway/foreman_api.rb', line 25 def fetch_token(auth_header, params) registry_request(auth_header, params, 'token') end |
#fetch_user_repositories(auth_header, params) ⇒ Object
29 30 31 |
# File 'lib/smart_proxy_container_gateway/foreman_api.rb', line 29 def fetch_user_repositories(auth_header, params) registry_request(auth_header, params, '_catalog') end |
#process_params(params_in) ⇒ Object
20 21 22 23 |
# File 'lib/smart_proxy_container_gateway/foreman_api.rb', line 20 def process_params(params_in) params = params_in.slice('scope', 'account').compact URI.encode_www_form(params) end |
#registry_request(auth_header, params, suffix) ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/smart_proxy_container_gateway/foreman_api.rb', line 6 def registry_request(auth_header, params, suffix) uri = URI.join(Proxy::SETTINGS.foreman_url, Proxy::ContainerGateway::Plugin.settings.katello_registry_path, suffix) uri.query = process_params(params) req = Net::HTTP::Get.new(uri) req.add_field('Authorization', auth_header) req.add_field('Accept', 'application/json') req.content_type = 'application/json' http = Net::HTTP.new(uri.hostname, uri.port) http.use_ssl = true http.request(req) end |