smart_proxy_pulp 3.2.0 → 3.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile +15 -4
- data/bundler.d/pulp.rb +3 -1
- data/lib/smart_proxy_pulp.rb +2 -0
- data/lib/smart_proxy_pulp_plugin/pulpcore_api.rb +3 -0
- data/lib/smart_proxy_pulp_plugin/pulpcore_client.rb +6 -4
- data/lib/smart_proxy_pulp_plugin/pulpcore_http_config.ru +2 -0
- data/lib/smart_proxy_pulp_plugin/pulpcore_plugin.rb +2 -0
- data/lib/smart_proxy_pulp_plugin/validators.rb +6 -5
- data/lib/smart_proxy_pulp_plugin/version.rb +3 -1
- metadata +10 -77
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: aab95a11d6f8ddfd3d856ed26bb4da3600561323442ae4e83820dc0428b50829
|
4
|
+
data.tar.gz: 13764f192fa6a7770cc6d05b12d19a4ff8246383bee85cc9ba83f18e25850916
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1ff2ada564ea544755a507b11b1114b17f28d8c8f143b0a0f68453e2fc064922c5b074bc9fe5f30c52389275984b7234ca1569a2db6497f589ca2d1e389f42a0
|
7
|
+
data.tar.gz: cbd18836405c2bf1de7c3a09eea4c87ead10e3c804eb43ac966e672959463b54576b92316361293b4a5265d3f5d375be4a947a820acb88d2ca477ebb0356e1a5
|
data/Gemfile
CHANGED
@@ -1,9 +1,20 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
source 'https://rubygems.org'
|
2
4
|
gemspec
|
3
5
|
|
4
|
-
group :
|
5
|
-
gem '
|
6
|
+
group :rubocop do
|
7
|
+
gem 'rubocop', '~> 1.28.0'
|
8
|
+
gem 'rubocop-performance'
|
9
|
+
gem 'rubocop-rake'
|
6
10
|
end
|
7
11
|
|
8
|
-
|
9
|
-
gem '
|
12
|
+
group :test do
|
13
|
+
gem 'ci_reporter_test_unit'
|
14
|
+
gem 'mocha', '~> 1'
|
15
|
+
gem 'rack-test'
|
16
|
+
gem 'rake', '~> 13'
|
17
|
+
gem 'smart_proxy', :git => 'https://github.com/theforeman/smart-proxy', :branch => 'develop'
|
18
|
+
gem 'test-unit', '~> 3'
|
19
|
+
gem 'webmock', '~> 3'
|
20
|
+
end
|
data/bundler.d/pulp.rb
CHANGED
data/lib/smart_proxy_pulp.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'sinatra'
|
2
4
|
require 'smart_proxy_pulp_plugin/pulpcore_client'
|
3
5
|
|
@@ -10,6 +12,7 @@ module PulpProxy
|
|
10
12
|
begin
|
11
13
|
result = PulpcoreClient.get("/pulp/api/v3/status/")
|
12
14
|
return result.body if result.is_a?(Net::HTTPSuccess)
|
15
|
+
|
13
16
|
log_halt result.code, "Pulp server at #{PulpcoreClient.pulp_url} returned an error: '#{result.message}'"
|
14
17
|
rescue SocketError, Errno::ECONNREFUSED => e
|
15
18
|
log_halt 503, "Communication error with '#{URI.parse(PulpcoreClient.pulp_url).host}': #{e.message}"
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'net/http'
|
2
4
|
require 'net/https'
|
3
5
|
require 'uri'
|
@@ -7,15 +9,15 @@ module PulpProxy
|
|
7
9
|
class PulpcoreClient
|
8
10
|
def self.get(path)
|
9
11
|
uri = URI.parse(pulp_url)
|
10
|
-
req = Net::HTTP::Get.new(URI.join(uri.to_s.chomp('/')
|
12
|
+
req = Net::HTTP::Get.new(URI.join("#{uri.to_s.chomp('/')}/", path))
|
11
13
|
req.add_field('Accept', 'application/json')
|
12
|
-
|
14
|
+
http.request(req)
|
13
15
|
end
|
14
16
|
|
15
17
|
def self.capabilities
|
16
18
|
body = JSON.parse(get("/pulp/api/v3/status/").body)
|
17
|
-
body['versions'].map{|item| item['component'] }
|
18
|
-
rescue => e
|
19
|
+
body['versions'].map { |item| item['component'] }
|
20
|
+
rescue StandardError => e
|
19
21
|
logger.error("Could not fetch capabilities: #{e.message}")
|
20
22
|
[]
|
21
23
|
end
|
@@ -1,14 +1,15 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module PulpProxy
|
2
4
|
module Validators
|
3
5
|
class Include < ::Proxy::PluginValidators::Base
|
4
6
|
def validate!(settings)
|
5
7
|
setting_value = settings[@setting_name]
|
8
|
+
return true if (setting_value - @params).empty?
|
6
9
|
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
true
|
11
|
-
end
|
10
|
+
# rubocop:disable Layout/LineLength
|
11
|
+
raise ::Proxy::Error::ConfigurationError, "Parameter '#{@setting_name}' is expected to be one or more of #{@params}"
|
12
|
+
# rubocop:enable Layout/LineLength
|
12
13
|
end
|
13
14
|
end
|
14
15
|
end
|
metadata
CHANGED
@@ -1,86 +1,16 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: smart_proxy_pulp
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dmitri Dolguikh
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
12
|
-
dependencies:
|
13
|
-
-
|
14
|
-
name: test-unit
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - "~>"
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '3'
|
20
|
-
type: :development
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - "~>"
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: '3'
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: mocha
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - "~>"
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: '1'
|
34
|
-
type: :development
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
-
requirements:
|
38
|
-
- - "~>"
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: '1'
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: webmock
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - "~>"
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '3'
|
48
|
-
type: :development
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - "~>"
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '3'
|
55
|
-
- !ruby/object:Gem::Dependency
|
56
|
-
name: rack-test
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
58
|
-
requirements:
|
59
|
-
- - ">="
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '0'
|
62
|
-
type: :development
|
63
|
-
prerelease: false
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
65
|
-
requirements:
|
66
|
-
- - ">="
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version: '0'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: rake
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - "~>"
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: '13'
|
76
|
-
type: :development
|
77
|
-
prerelease: false
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
79
|
-
requirements:
|
80
|
-
- - "~>"
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: '13'
|
83
|
-
description: " Basic Pulp support for Foreman Smart-Proxy\n"
|
11
|
+
date: 2024-01-08 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
13
|
+
description: Basic Pulp support for Foreman Smart-Proxy
|
84
14
|
email:
|
85
15
|
- dmitri@redhat.com
|
86
16
|
executables: []
|
@@ -108,16 +38,19 @@ require_paths:
|
|
108
38
|
- lib
|
109
39
|
required_ruby_version: !ruby/object:Gem::Requirement
|
110
40
|
requirements:
|
111
|
-
- - "
|
41
|
+
- - ">="
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '2.7'
|
44
|
+
- - "<"
|
112
45
|
- !ruby/object:Gem::Version
|
113
|
-
version: '
|
46
|
+
version: '4'
|
114
47
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
115
48
|
requirements:
|
116
49
|
- - ">="
|
117
50
|
- !ruby/object:Gem::Version
|
118
51
|
version: '0'
|
119
52
|
requirements: []
|
120
|
-
rubygems_version: 3.
|
53
|
+
rubygems_version: 3.4.10
|
121
54
|
signing_key:
|
122
55
|
specification_version: 4
|
123
56
|
summary: Basic Pulp support for Foreman Smart-Proxy
|