runcible 1.0.6 → 1.0.7
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.
- data/README.md +1 -1
- data/Rakefile +2 -1
- data/lib/runcible/extensions/consumer.rb +14 -10
- data/lib/runcible/extensions/repository.rb +17 -6
- data/lib/runcible/models/puppet_install_distributor.rb +48 -0
- data/lib/runcible/resources/consumer.rb +12 -4
- data/lib/runcible/resources/content.rb +32 -5
- data/lib/runcible/resources/repository.rb +23 -15
- data/lib/runcible/version.rb +1 -1
- metadata +109 -99
data/README.md
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
Exposing Pulp's juiciest parts. http://www.pulpproject.org/
|
6
6
|
|
7
|
-
Latest Live Tested Version: **pulp-server-2.
|
7
|
+
Latest Live Tested Version: **pulp-server-2.3.0-0.12.alpha.el6.noarch**
|
8
8
|
|
9
9
|
Current stable Runcible: https://github.com/Katello/runcible/tree/0.3
|
10
10
|
|
data/Rakefile
CHANGED
@@ -16,7 +16,7 @@ namespace :test do
|
|
16
16
|
t.pattern = 'test/unit/test_*.rb'
|
17
17
|
end
|
18
18
|
|
19
|
-
[:resources, :extensions, :unit].each do |task_name|
|
19
|
+
[:resources, :extensions, :unit, :models].each do |task_name|
|
20
20
|
desc "Runs the #{task_name} tests"
|
21
21
|
task task_name do
|
22
22
|
options = {}
|
@@ -68,6 +68,7 @@ end
|
|
68
68
|
desc "Runs all tests"
|
69
69
|
task :test do
|
70
70
|
Rake::Task['test:unit'].invoke
|
71
|
+
Rake::Task['test:models'].invoke
|
71
72
|
Rake::Task['test:resources'].invoke
|
72
73
|
Rake::Task['test:extensions'].invoke
|
73
74
|
end
|
@@ -150,6 +150,17 @@ module Runcible
|
|
150
150
|
content
|
151
151
|
end
|
152
152
|
|
153
|
+
# Regenerate the applicability for a set of consumers
|
154
|
+
#
|
155
|
+
# @param [String, Array] ids array of consumer ids
|
156
|
+
# @return [RestClient::Response]
|
157
|
+
def regenerate_applicability_by_ids(ids)
|
158
|
+
criteria = {
|
159
|
+
'consumer_criteria' => { 'filters' => { 'id' => { '$in' => ids } } }
|
160
|
+
}
|
161
|
+
regenerate_applicability(criteria)
|
162
|
+
end
|
163
|
+
|
153
164
|
# Retrieve the set of errata that is applicable to a consumer(s)
|
154
165
|
#
|
155
166
|
# @param [String, Array] ids string containing a single consumer id or an array of ids
|
@@ -158,23 +169,16 @@ module Runcible
|
|
158
169
|
# applicable errata; otherwise, it will list
|
159
170
|
# errata and the consumers they are applicable to
|
160
171
|
# @return [RestClient::Response] content applicability hash with details of errata available to consumer(s)
|
161
|
-
def applicable_errata(ids
|
162
|
-
|
172
|
+
def applicable_errata(ids)
|
163
173
|
ids = [ids] if ids.is_a? String
|
164
|
-
consumer_criteria = { 'filters' => { 'id' => { '$in' => ids } } } unless ids.empty?
|
165
|
-
repo_criteria = { 'filters' => { 'id' => { '$in' => repoids } } } unless repoids.empty?
|
166
|
-
report_style = (consumer_report == true) ? 'by_consumer' : 'by_units'
|
167
174
|
|
168
175
|
criteria = {
|
169
|
-
'
|
170
|
-
'
|
171
|
-
'unit_criteria' => { 'erratum' => { } },
|
172
|
-
'override_config' => { 'report_style' => report_style }
|
176
|
+
'criteria' => { 'filters' => { 'id' => { '$in' => ids } } },
|
177
|
+
'content_types' => [Runcible::Extensions::Errata.content_type]
|
173
178
|
}
|
174
179
|
applicability(criteria)
|
175
180
|
end
|
176
181
|
|
177
|
-
|
178
182
|
private
|
179
183
|
|
180
184
|
def repository_extension
|
@@ -30,7 +30,7 @@ module Runcible
|
|
30
30
|
#
|
31
31
|
# @param [String] id the id of the repository being created
|
32
32
|
# @param [Hash, Runcible::Extensions::Importer] importer either a hash representing an importer or an Importer object
|
33
|
-
# @return [RestClient::Response] the created repository
|
33
|
+
# @return [RestClient::Response] the created repository
|
34
34
|
def create_with_importer(id, importer)
|
35
35
|
create_with_importer_and_distributors(id, importer)
|
36
36
|
end
|
@@ -39,7 +39,7 @@ module Runcible
|
|
39
39
|
#
|
40
40
|
# @param [String] id the id of the repository being created
|
41
41
|
# @param [Array] distributors an array of hashes representing distributors or an array of Distributor objects
|
42
|
-
# @return [RestClient::Response] the created repository
|
42
|
+
# @return [RestClient::Response] the created repository
|
43
43
|
def create_with_distributors(id, distributors)
|
44
44
|
create_with_importer_and_distributors(id, nil, distributors)
|
45
45
|
end
|
@@ -50,7 +50,7 @@ module Runcible
|
|
50
50
|
# @param [Hash, Runcible::Extensions::Importer] importer either a hash representing an importer or an Importer object
|
51
51
|
# @param [Array] distributors an array of hashes representing distributors or an array of Distributor objects
|
52
52
|
# @param [Hash] optional container for all optional parameters
|
53
|
-
# @return [RestClient::Response] the created repository
|
53
|
+
# @return [RestClient::Response] the created repository
|
54
54
|
def create_with_importer_and_distributors(id, importer, distributors=[], optional={})
|
55
55
|
if importer.is_a?(Runcible::Models::Importer)
|
56
56
|
optional[:importer_type_id] = importer.id
|
@@ -113,7 +113,7 @@ module Runcible
|
|
113
113
|
# @param [Array] repository_ids the repository ID
|
114
114
|
# @return [RestClient::Response] the set of repositories requested
|
115
115
|
def search_by_repository_ids(repository_ids)
|
116
|
-
criteria = {:filters =>
|
116
|
+
criteria = {:filters =>
|
117
117
|
{ "id" => {"$in" => repository_ids}}
|
118
118
|
}
|
119
119
|
search(criteria)
|
@@ -275,7 +275,7 @@ module Runcible
|
|
275
275
|
#
|
276
276
|
# @param [String] repo_id the ID of the repository
|
277
277
|
# @param [String] type the importer type
|
278
|
-
# @return [RestClient::Response]
|
278
|
+
# @return [RestClient::Response]
|
279
279
|
def remove_schedules(repo_id, type)
|
280
280
|
schedules = Runcible::Resources::RepositorySchedule.new(self.config).list(repo_id, type)
|
281
281
|
schedules.each do |schedule|
|
@@ -286,7 +286,7 @@ module Runcible
|
|
286
286
|
# Publishes a repository for all of it's distributors
|
287
287
|
#
|
288
288
|
# @param [String] repo_id the ID of the repository
|
289
|
-
# @return [RestClient::Response] set of tasks representing each publish
|
289
|
+
# @return [RestClient::Response] set of tasks representing each publish
|
290
290
|
def publish_all(repo_id)
|
291
291
|
to_ret = []
|
292
292
|
retrieve_with_details(repo_id)['distributors'].each do |d|
|
@@ -303,6 +303,17 @@ module Runcible
|
|
303
303
|
retrieve(repo_id, {:details => true})
|
304
304
|
end
|
305
305
|
|
306
|
+
# Regenerate the applicability for consumers bound to a given set of repositories
|
307
|
+
#
|
308
|
+
# @param [String, Array] ids array of repo ids
|
309
|
+
# @return [RestClient::Response]
|
310
|
+
def regenerate_applicability_by_ids(ids)
|
311
|
+
criteria = {
|
312
|
+
'repo_criteria' => { 'filters' => { 'id' => { '$in' => ids } } }
|
313
|
+
}
|
314
|
+
regenerate_applicability(criteria)
|
315
|
+
end
|
316
|
+
|
306
317
|
end
|
307
318
|
end
|
308
319
|
end
|
@@ -0,0 +1,48 @@
|
|
1
|
+
# Copyright (c) 2013 Red Hat Inc.
|
2
|
+
#
|
3
|
+
# MIT License
|
4
|
+
#
|
5
|
+
# Permission is hereby granted, free of charge, to any person obtaining
|
6
|
+
# a copy of this software and associated documentation files (the
|
7
|
+
# "Software"), to deal in the Software without restriction, including
|
8
|
+
# without limitation the rights to use, copy, modify, merge, publish,
|
9
|
+
# distribute, sublicense, and/or sell copies of the Software, and to
|
10
|
+
# permit persons to whom the Software is furnished to do so, subject to
|
11
|
+
# the following conditions:
|
12
|
+
#
|
13
|
+
# The above copyright notice and this permission notice shall be
|
14
|
+
# included in all copies or substantial portions of the Software.
|
15
|
+
#
|
16
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
17
|
+
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
18
|
+
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
19
|
+
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
20
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
21
|
+
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
22
|
+
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
23
|
+
|
24
|
+
require 'active_support/json'
|
25
|
+
require 'securerandom'
|
26
|
+
|
27
|
+
module Runcible
|
28
|
+
module Models
|
29
|
+
class PuppetInstallDistributor < Distributor
|
30
|
+
attr_accessor 'install_path'
|
31
|
+
|
32
|
+
def initialize(install_path, params = {})
|
33
|
+
@install_path = install_path
|
34
|
+
super(params)
|
35
|
+
end
|
36
|
+
|
37
|
+
def self.type_id
|
38
|
+
'puppet_install_distributor'
|
39
|
+
end
|
40
|
+
|
41
|
+
def config
|
42
|
+
to_ret = self.as_json
|
43
|
+
to_ret.delete('id')
|
44
|
+
to_ret
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
@@ -30,7 +30,7 @@ module Runcible
|
|
30
30
|
# Generates the API path for Consumers
|
31
31
|
#
|
32
32
|
# @param [String] id the ID of the consumer
|
33
|
-
# @return [String] the consumer path, may contain the id if passed
|
33
|
+
# @return [String] the consumer path, may contain the id if passed
|
34
34
|
def self.path(id=nil)
|
35
35
|
(id == nil) ? "consumers/" : "consumers/#{id}/"
|
36
36
|
end
|
@@ -163,12 +163,20 @@ module Runcible
|
|
163
163
|
call(:post, path("#{id}/actions/content/uninstall/"), :payload => { :required => required })
|
164
164
|
end
|
165
165
|
|
166
|
-
#
|
166
|
+
# (Re)Generate applicability for some set of consumers
|
167
167
|
#
|
168
|
-
# @param
|
168
|
+
# @param [Hash] options payload representing criteria
|
169
|
+
# @return [RestClient::Response]
|
170
|
+
def regenerate_applicability(options = {})
|
171
|
+
call(:post, path("actions/content/regenerate_applicability/"), :payload => { :required => options})
|
172
|
+
end
|
173
|
+
|
174
|
+
# retrieve the applicability for some set of consumers
|
175
|
+
#
|
176
|
+
# @param [Hash] options hash representing criteria
|
169
177
|
# @return [RestClient::Response]
|
170
178
|
def applicability(options={})
|
171
|
-
call(:post, path
|
179
|
+
call(:post, path + "content/applicability/", :payload => { :required => options })
|
172
180
|
end
|
173
181
|
|
174
182
|
end
|
@@ -27,11 +27,12 @@ module Runcible
|
|
27
27
|
module Resources
|
28
28
|
# @see https://pulp-dev-guide.readthedocs.org/en/latest/rest-api/content/index.html
|
29
29
|
class Content < Runcible::Base
|
30
|
+
|
30
31
|
# Generates the API path for Contents
|
31
32
|
#
|
32
33
|
# @param [String] upload_id the id of the upload_request
|
33
34
|
# @return [String] the content path, may contain the upload_id if passed
|
34
|
-
def
|
35
|
+
def upload_path(upload_id=nil)
|
35
36
|
(upload_id == nil) ? "content/uploads/" : "content/uploads/#{upload_id}/"
|
36
37
|
end
|
37
38
|
|
@@ -40,7 +41,7 @@ module Runcible
|
|
40
41
|
# Request Body Contents: None
|
41
42
|
# @return [RestClient::Response] Pulp returns the upload_id which is used for subsequent operations
|
42
43
|
def create_upload_request
|
43
|
-
call(:post,
|
44
|
+
call(:post, upload_path)
|
44
45
|
end
|
45
46
|
|
46
47
|
# Upload bits
|
@@ -50,7 +51,7 @@ module Runcible
|
|
50
51
|
# @param [File] content content of the file being uploaded to the server
|
51
52
|
# @return [RestClient::Response] none
|
52
53
|
def upload_bits(upload_id, offset, content)
|
53
|
-
call(:put,
|
54
|
+
call(:put, upload_path("#{upload_id}/#{offset}/"), :payload => content)
|
54
55
|
end
|
55
56
|
|
56
57
|
# Import into a repository
|
@@ -72,7 +73,7 @@ module Runcible
|
|
72
73
|
# Query Parameters: None
|
73
74
|
# @return [RestClient::Response] none
|
74
75
|
def delete_upload_request(upload_id)
|
75
|
-
call(:delete,
|
76
|
+
call(:delete, upload_path("#{upload_id}/"))
|
76
77
|
end
|
77
78
|
|
78
79
|
# List all upload requests
|
@@ -80,7 +81,33 @@ module Runcible
|
|
80
81
|
# Query Parameters: None
|
81
82
|
# @return [RestClient::Response] the list of IDs for all upload requests on the server; empty list if there are none
|
82
83
|
def list_all_requests
|
83
|
-
call(:get,
|
84
|
+
call(:get, upload_path)
|
85
|
+
end
|
86
|
+
|
87
|
+
# Generates an api path for orphaned content
|
88
|
+
#
|
89
|
+
# @param [String] type_id the type id of the orphaned content
|
90
|
+
# @return [String] the content path, may contain the type_id if passed
|
91
|
+
def orphan_path(type_id = nil)
|
92
|
+
path = "content/orphans/"
|
93
|
+
path << "#{type_id}/" if type_id
|
94
|
+
path
|
95
|
+
end
|
96
|
+
|
97
|
+
# List all orphaned content optionally by type
|
98
|
+
#
|
99
|
+
# @param type_id content unit type (rpm, puppet_module, etc.)
|
100
|
+
# @return list of orphaned content
|
101
|
+
def list_orphans(type_id = nil)
|
102
|
+
call(:get, orphan_path(type_id))
|
103
|
+
end
|
104
|
+
|
105
|
+
# Delete all orphaned content optionally by type
|
106
|
+
#
|
107
|
+
# @param type_id content unit type (rpm, puppet_module, etc.)
|
108
|
+
# @return list of orphaned content
|
109
|
+
def remove_orphans(type_id = nil)
|
110
|
+
call(:delete, orphan_path(type_id))
|
84
111
|
end
|
85
112
|
|
86
113
|
end
|
@@ -32,14 +32,14 @@ module Runcible
|
|
32
32
|
# @param [String] id the id of the repository
|
33
33
|
# @return [String] the repository path, may contain the id if passed
|
34
34
|
def self.path(id=nil)
|
35
|
-
(id == nil) ? "repositories/" : "repositories/#{id}/"
|
35
|
+
(id == nil) ? "repositories/" : "repositories/#{id}/"
|
36
36
|
end
|
37
37
|
|
38
38
|
# Creates a repository
|
39
39
|
#
|
40
40
|
# @param [String] id the id of the repository
|
41
41
|
# @param [Hash] optional container for all optional parameters
|
42
|
-
# @return [RestClient::Response]
|
42
|
+
# @return [RestClient::Response]
|
43
43
|
def create(id, optional={})
|
44
44
|
required = required_params(binding.send(:local_variables), binding)
|
45
45
|
call(:post, path, :payload => { :required => required, :optional => optional })
|
@@ -49,7 +49,7 @@ module Runcible
|
|
49
49
|
#
|
50
50
|
# @param [String] id the id of the repository
|
51
51
|
# @param [Hash] params container for optional query parameters
|
52
|
-
# @return [RestClient::Response]
|
52
|
+
# @return [RestClient::Response]
|
53
53
|
def retrieve(id, params={})
|
54
54
|
call(:get, path(id), :params => params)
|
55
55
|
end
|
@@ -58,7 +58,7 @@ module Runcible
|
|
58
58
|
#
|
59
59
|
# @param [String] id the id of the repository
|
60
60
|
# @param [Hash] optional container for all optional parameters
|
61
|
-
# @return [RestClient::Response]
|
61
|
+
# @return [RestClient::Response]
|
62
62
|
def update(id, optional={})
|
63
63
|
call(:put, path(id), :payload => { :delta => optional })
|
64
64
|
end
|
@@ -66,7 +66,7 @@ module Runcible
|
|
66
66
|
# Deletes a repository
|
67
67
|
#
|
68
68
|
# @param [String] id the id of the repository
|
69
|
-
# @return [RestClient::Response]
|
69
|
+
# @return [RestClient::Response]
|
70
70
|
def delete(id)
|
71
71
|
call(:delete, path(id))
|
72
72
|
end
|
@@ -74,7 +74,7 @@ module Runcible
|
|
74
74
|
# Retrieve all repositories
|
75
75
|
#
|
76
76
|
# @param [Hash] optional container for all optional parameters
|
77
|
-
# @return [RestClient::Response]
|
77
|
+
# @return [RestClient::Response]
|
78
78
|
def retrieve_all(optional={})
|
79
79
|
call(:get, path, :payload => { :optional => optional })
|
80
80
|
end
|
@@ -83,7 +83,7 @@ module Runcible
|
|
83
83
|
#
|
84
84
|
# @param [Hash] criteria criteria object containing Mongo syntax
|
85
85
|
# @param [Hash] optional container for all optional parameters
|
86
|
-
# @return [RestClient::Response]
|
86
|
+
# @return [RestClient::Response]
|
87
87
|
def search(criteria, optional={})
|
88
88
|
required = required_params(binding.send(:local_variables), binding)
|
89
89
|
call(:post, path("search"), :payload => { :required => required, :optional => optional })
|
@@ -94,7 +94,7 @@ module Runcible
|
|
94
94
|
# @param [String] id the ID of the repository
|
95
95
|
# @param [String] importer_type_id the type ID of the importer being associated
|
96
96
|
# @param [Hash] importer_config configuration options for the importer
|
97
|
-
# @return [RestClient::Response]
|
97
|
+
# @return [RestClient::Response]
|
98
98
|
def associate_importer(id, importer_type_id, importer_config)
|
99
99
|
required = required_params(binding.send(:local_variables), binding)
|
100
100
|
call(:post, path("#{id}/importers"), :payload => { :required => required })
|
@@ -106,7 +106,7 @@ module Runcible
|
|
106
106
|
# @param [String] distributor_type_id the type ID of the distributor being associated
|
107
107
|
# @param [Hash] distributor_config configuration options for the distributor
|
108
108
|
# @param [Hash] optional container for all optional parameters
|
109
|
-
# @return [RestClient::Response]
|
109
|
+
# @return [RestClient::Response]
|
110
110
|
def associate_distributor(id, distributor_type_id, distributor_config, optional={})
|
111
111
|
required = required_params(binding.send(:local_variables), binding, ["id"])
|
112
112
|
call(:post, path("#{id}/distributors"), :payload => { :required => required, :optional => optional })
|
@@ -116,7 +116,7 @@ module Runcible
|
|
116
116
|
#
|
117
117
|
# @param [String] id the id of the repository
|
118
118
|
# @param [Hash] optional container for all optional parameters
|
119
|
-
# @return [RestClient::Response]
|
119
|
+
# @return [RestClient::Response]
|
120
120
|
def sync(id, optional={})
|
121
121
|
call(:post, "#{path(id)}actions/sync/", :payload => { :optional => optional })
|
122
122
|
end
|
@@ -124,7 +124,7 @@ module Runcible
|
|
124
124
|
# History of all sync actions on a repository
|
125
125
|
#
|
126
126
|
# @param [String] id the id of the repository
|
127
|
-
# @return [RestClient::Response]
|
127
|
+
# @return [RestClient::Response]
|
128
128
|
def sync_history(id)
|
129
129
|
call(:get, "#{path(id)}/history/sync/")
|
130
130
|
end
|
@@ -134,7 +134,7 @@ module Runcible
|
|
134
134
|
# @param [String] destination_repo_id the id of the destination repository
|
135
135
|
# @param [String] source_repo_id the id of the source repository
|
136
136
|
# @param [Hash] optional container for all optional parameters
|
137
|
-
# @return [RestClient::Response]
|
137
|
+
# @return [RestClient::Response]
|
138
138
|
def unit_copy(destination_repo_id, source_repo_id, optional={})
|
139
139
|
required = required_params(binding.send(:local_variables), binding, ["destination_repo_id"])
|
140
140
|
call(:post, "#{path(destination_repo_id)}actions/associate/",
|
@@ -145,7 +145,7 @@ module Runcible
|
|
145
145
|
#
|
146
146
|
# @param [String] source_repo_id the id of the source repository
|
147
147
|
# @param [Hash] criteria criteria object containing Mongo syntax
|
148
|
-
# @return [RestClient::Response]
|
148
|
+
# @return [RestClient::Response]
|
149
149
|
def unassociate_units(source_repo_id, criteria={})
|
150
150
|
required = required_params(binding.send(:local_variables), binding, ["source_repo_id"])
|
151
151
|
call(:post, "#{path(source_repo_id)}actions/unassociate/",
|
@@ -156,7 +156,7 @@ module Runcible
|
|
156
156
|
#
|
157
157
|
# @param [String] id the id of the repository
|
158
158
|
# @param [Hash] criteria criteria object containing Mongo syntax
|
159
|
-
# @return [RestClient::Response]
|
159
|
+
# @return [RestClient::Response]
|
160
160
|
def unit_search(id, criteria={})
|
161
161
|
call(:post, "#{path(id)}search/units/", :payload=>{:required=>{:criteria=>criteria}})
|
162
162
|
end
|
@@ -175,7 +175,7 @@ module Runcible
|
|
175
175
|
#
|
176
176
|
# @param [String] id the id of the repository
|
177
177
|
# @param [String] distributor_id the id of the distributor
|
178
|
-
# @return [RestClient::Response]
|
178
|
+
# @return [RestClient::Response]
|
179
179
|
def delete_distributor(id, distributor_id)
|
180
180
|
call(:delete, "#{path(id)}/distributors/#{distributor_id}/")
|
181
181
|
end
|
@@ -211,6 +211,14 @@ module Runcible
|
|
211
211
|
call(:put, path("#{id}/importers/#{importer_id}/"), :payload => { :required => required})
|
212
212
|
end
|
213
213
|
|
214
|
+
# Regenerate the applicability for consumers bound to a given set of repositories
|
215
|
+
#
|
216
|
+
# @param [Hash] options payload representing criteria
|
217
|
+
# @return [RestClient::Response]
|
218
|
+
def regenerate_applicability(options = {})
|
219
|
+
call(:post, path("actions/content/regenerate_applicability/"), :payload => { :required => options})
|
220
|
+
end
|
221
|
+
|
214
222
|
end
|
215
223
|
end
|
216
224
|
end
|
data/lib/runcible/version.rb
CHANGED
metadata
CHANGED
@@ -1,128 +1,136 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: runcible
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
5
|
-
prerelease:
|
4
|
+
version: 1.0.7
|
5
|
+
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Eric D Helms, Justin Sherrill
|
9
|
-
autorequire:
|
9
|
+
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-09-
|
12
|
+
date: 2013-09-20 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: json
|
16
|
-
|
17
|
-
none: false
|
16
|
+
version_requirements: !ruby/object:Gem::Requirement
|
18
17
|
requirements:
|
19
|
-
- -
|
18
|
+
- - ">="
|
20
19
|
- !ruby/object:Gem::Version
|
21
|
-
version:
|
22
|
-
|
23
|
-
prerelease: false
|
24
|
-
version_requirements: !ruby/object:Gem::Requirement
|
20
|
+
version: !binary |-
|
21
|
+
MA==
|
25
22
|
none: false
|
23
|
+
requirement: !ruby/object:Gem::Requirement
|
26
24
|
requirements:
|
27
|
-
- -
|
25
|
+
- - ">="
|
28
26
|
- !ruby/object:Gem::Version
|
29
|
-
version:
|
27
|
+
version: !binary |-
|
28
|
+
MA==
|
29
|
+
none: false
|
30
|
+
prerelease: false
|
31
|
+
type: :runtime
|
30
32
|
- !ruby/object:Gem::Dependency
|
31
33
|
name: rest-client
|
32
|
-
|
33
|
-
none: false
|
34
|
+
version_requirements: !ruby/object:Gem::Requirement
|
34
35
|
requirements:
|
35
|
-
- -
|
36
|
+
- - ">="
|
36
37
|
- !ruby/object:Gem::Version
|
37
38
|
version: 1.6.1
|
38
|
-
type: :runtime
|
39
|
-
prerelease: false
|
40
|
-
version_requirements: !ruby/object:Gem::Requirement
|
41
39
|
none: false
|
40
|
+
requirement: !ruby/object:Gem::Requirement
|
42
41
|
requirements:
|
43
|
-
- -
|
42
|
+
- - ">="
|
44
43
|
- !ruby/object:Gem::Version
|
45
44
|
version: 1.6.1
|
45
|
+
none: false
|
46
|
+
prerelease: false
|
47
|
+
type: :runtime
|
46
48
|
- !ruby/object:Gem::Dependency
|
47
49
|
name: oauth
|
48
|
-
|
49
|
-
none: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
50
51
|
requirements:
|
51
|
-
- -
|
52
|
+
- - ">="
|
52
53
|
- !ruby/object:Gem::Version
|
53
|
-
version:
|
54
|
-
|
55
|
-
prerelease: false
|
56
|
-
version_requirements: !ruby/object:Gem::Requirement
|
54
|
+
version: !binary |-
|
55
|
+
MA==
|
57
56
|
none: false
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
61
|
+
version: !binary |-
|
62
|
+
MA==
|
63
|
+
none: false
|
64
|
+
prerelease: false
|
65
|
+
type: :runtime
|
62
66
|
- !ruby/object:Gem::Dependency
|
63
67
|
name: activesupport
|
64
|
-
|
65
|
-
none: false
|
68
|
+
version_requirements: !ruby/object:Gem::Requirement
|
66
69
|
requirements:
|
67
|
-
- -
|
70
|
+
- - ">="
|
68
71
|
- !ruby/object:Gem::Version
|
69
72
|
version: 3.0.10
|
70
|
-
type: :runtime
|
71
|
-
prerelease: false
|
72
|
-
version_requirements: !ruby/object:Gem::Requirement
|
73
73
|
none: false
|
74
|
+
requirement: !ruby/object:Gem::Requirement
|
74
75
|
requirements:
|
75
|
-
- -
|
76
|
+
- - ">="
|
76
77
|
- !ruby/object:Gem::Version
|
77
78
|
version: 3.0.10
|
79
|
+
none: false
|
80
|
+
prerelease: false
|
81
|
+
type: :runtime
|
78
82
|
- !ruby/object:Gem::Dependency
|
79
83
|
name: i18n
|
80
|
-
|
81
|
-
none: false
|
84
|
+
version_requirements: !ruby/object:Gem::Requirement
|
82
85
|
requirements:
|
83
|
-
- -
|
86
|
+
- - ">="
|
84
87
|
- !ruby/object:Gem::Version
|
85
88
|
version: 0.5.0
|
86
|
-
type: :runtime
|
87
|
-
prerelease: false
|
88
|
-
version_requirements: !ruby/object:Gem::Requirement
|
89
89
|
none: false
|
90
|
+
requirement: !ruby/object:Gem::Requirement
|
90
91
|
requirements:
|
91
|
-
- -
|
92
|
+
- - ">="
|
92
93
|
- !ruby/object:Gem::Version
|
93
94
|
version: 0.5.0
|
95
|
+
none: false
|
96
|
+
prerelease: false
|
97
|
+
type: :runtime
|
94
98
|
- !ruby/object:Gem::Dependency
|
95
99
|
name: yard
|
96
|
-
|
97
|
-
none: false
|
100
|
+
version_requirements: !ruby/object:Gem::Requirement
|
98
101
|
requirements:
|
99
|
-
- -
|
102
|
+
- - ">="
|
100
103
|
- !ruby/object:Gem::Version
|
101
|
-
version:
|
102
|
-
|
103
|
-
prerelease: false
|
104
|
-
version_requirements: !ruby/object:Gem::Requirement
|
104
|
+
version: !binary |-
|
105
|
+
MA==
|
105
106
|
none: false
|
107
|
+
requirement: !ruby/object:Gem::Requirement
|
106
108
|
requirements:
|
107
|
-
- -
|
109
|
+
- - ">="
|
108
110
|
- !ruby/object:Gem::Version
|
109
|
-
version:
|
111
|
+
version: !binary |-
|
112
|
+
MA==
|
113
|
+
none: false
|
114
|
+
prerelease: false
|
115
|
+
type: :development
|
110
116
|
- !ruby/object:Gem::Dependency
|
111
117
|
name: maruku
|
112
|
-
|
113
|
-
none: false
|
118
|
+
version_requirements: !ruby/object:Gem::Requirement
|
114
119
|
requirements:
|
115
|
-
- -
|
120
|
+
- - ">="
|
116
121
|
- !ruby/object:Gem::Version
|
117
|
-
version:
|
118
|
-
|
119
|
-
prerelease: false
|
120
|
-
version_requirements: !ruby/object:Gem::Requirement
|
122
|
+
version: !binary |-
|
123
|
+
MA==
|
121
124
|
none: false
|
125
|
+
requirement: !ruby/object:Gem::Requirement
|
122
126
|
requirements:
|
123
|
-
- -
|
127
|
+
- - ">="
|
124
128
|
- !ruby/object:Gem::Version
|
125
|
-
version:
|
129
|
+
version: !binary |-
|
130
|
+
MA==
|
131
|
+
none: false
|
132
|
+
prerelease: false
|
133
|
+
type: :development
|
126
134
|
description: Exposing Pulp's juiciest components to the Ruby world.
|
127
135
|
email:
|
128
136
|
- ehelms@redhat.com, jsherril@redhat.com
|
@@ -131,42 +139,43 @@ extensions: []
|
|
131
139
|
extra_rdoc_files: []
|
132
140
|
files:
|
133
141
|
- lib/runcible.rb
|
142
|
+
- lib/runcible/version.rb
|
134
143
|
- lib/runcible/instance.rb
|
144
|
+
- lib/runcible/base.rb
|
145
|
+
- lib/runcible/models/puppet_distributor.rb
|
146
|
+
- lib/runcible/models/yum_clone_distributor.rb
|
147
|
+
- lib/runcible/models/distributor.rb
|
148
|
+
- lib/runcible/models/export_distributor.rb
|
135
149
|
- lib/runcible/models/puppet_importer.rb
|
136
|
-
- lib/runcible/models/
|
150
|
+
- lib/runcible/models/iso_importer.rb
|
151
|
+
- lib/runcible/models/yum_distributor.rb
|
137
152
|
- lib/runcible/models/nodes_http_distributor.rb
|
153
|
+
- lib/runcible/models/iso_distributor.rb
|
154
|
+
- lib/runcible/models/puppet_install_distributor.rb
|
138
155
|
- lib/runcible/models/yum_importer.rb
|
139
|
-
- lib/runcible/models/yum_distributor.rb
|
140
|
-
- lib/runcible/models/iso_importer.rb
|
141
156
|
- lib/runcible/models/importer.rb
|
142
|
-
- lib/runcible/models/export_distributor.rb
|
143
|
-
- lib/runcible/models/yum_clone_distributor.rb
|
144
|
-
- lib/runcible/models/distributor.rb
|
145
|
-
- lib/runcible/models/puppet_distributor.rb
|
146
|
-
- lib/runcible/resources/role.rb
|
147
|
-
- lib/runcible/resources/unit.rb
|
148
|
-
- lib/runcible/resources/consumer_group.rb
|
149
|
-
- lib/runcible/resources/user.rb
|
150
|
-
- lib/runcible/resources/task.rb
|
151
|
-
- lib/runcible/resources/repository_group.rb
|
152
|
-
- lib/runcible/resources/repository.rb
|
153
|
-
- lib/runcible/resources/event_notifier.rb
|
154
|
-
- lib/runcible/resources/consumer.rb
|
155
|
-
- lib/runcible/resources/repository_schedule.rb
|
156
|
-
- lib/runcible/resources/content.rb
|
157
|
-
- lib/runcible/base.rb
|
158
|
-
- lib/runcible/version.rb
|
159
|
-
- lib/runcible/extensions/unit.rb
|
160
|
-
- lib/runcible/extensions/consumer_group.rb
|
161
|
-
- lib/runcible/extensions/repository.rb
|
162
|
-
- lib/runcible/extensions/yum_repo_metadata_file.rb
|
163
157
|
- lib/runcible/extensions/package_category.rb
|
164
|
-
- lib/runcible/extensions/
|
165
|
-
- lib/runcible/extensions/
|
158
|
+
- lib/runcible/extensions/errata.rb
|
159
|
+
- lib/runcible/extensions/consumer_group.rb
|
166
160
|
- lib/runcible/extensions/puppet_module.rb
|
161
|
+
- lib/runcible/extensions/consumer.rb
|
162
|
+
- lib/runcible/extensions/repository.rb
|
167
163
|
- lib/runcible/extensions/rpm.rb
|
164
|
+
- lib/runcible/extensions/unit.rb
|
165
|
+
- lib/runcible/extensions/package_group.rb
|
166
|
+
- lib/runcible/extensions/yum_repo_metadata_file.rb
|
168
167
|
- lib/runcible/extensions/distribution.rb
|
169
|
-
- lib/runcible/
|
168
|
+
- lib/runcible/resources/role.rb
|
169
|
+
- lib/runcible/resources/consumer_group.rb
|
170
|
+
- lib/runcible/resources/content.rb
|
171
|
+
- lib/runcible/resources/consumer.rb
|
172
|
+
- lib/runcible/resources/repository_schedule.rb
|
173
|
+
- lib/runcible/resources/task.rb
|
174
|
+
- lib/runcible/resources/event_notifier.rb
|
175
|
+
- lib/runcible/resources/repository.rb
|
176
|
+
- lib/runcible/resources/user.rb
|
177
|
+
- lib/runcible/resources/unit.rb
|
178
|
+
- lib/runcible/resources/repository_group.rb
|
170
179
|
- LICENSE
|
171
180
|
- Rakefile
|
172
181
|
- Gemfile
|
@@ -174,27 +183,28 @@ files:
|
|
174
183
|
- CONTRIBUTING.md
|
175
184
|
homepage: https://github.com/Katello/runcible
|
176
185
|
licenses: []
|
177
|
-
post_install_message:
|
186
|
+
post_install_message:
|
178
187
|
rdoc_options: []
|
179
188
|
require_paths:
|
180
189
|
- lib
|
181
190
|
required_ruby_version: !ruby/object:Gem::Requirement
|
182
|
-
none: false
|
183
191
|
requirements:
|
184
|
-
- -
|
192
|
+
- - ">="
|
185
193
|
- !ruby/object:Gem::Version
|
186
|
-
version:
|
187
|
-
|
194
|
+
version: !binary |-
|
195
|
+
MA==
|
188
196
|
none: false
|
197
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
189
198
|
requirements:
|
190
|
-
- -
|
199
|
+
- - ">="
|
191
200
|
- !ruby/object:Gem::Version
|
192
|
-
version:
|
201
|
+
version: !binary |-
|
202
|
+
MA==
|
203
|
+
none: false
|
193
204
|
requirements: []
|
194
|
-
rubyforge_project:
|
195
|
-
rubygems_version: 1.8.
|
196
|
-
signing_key:
|
205
|
+
rubyforge_project:
|
206
|
+
rubygems_version: 1.8.24
|
207
|
+
signing_key:
|
197
208
|
specification_version: 3
|
198
209
|
summary: ''
|
199
210
|
test_files: []
|
200
|
-
has_rdoc:
|