runcible 0.4.11 → 0.4.12
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 +6 -1
- data/Rakefile +11 -4
- data/lib/runcible/extensions/distributor.rb +12 -0
- data/lib/runcible/extensions/export_distributor.rb +1 -4
- data/lib/runcible/extensions/iso_distributor.rb +1 -4
- data/lib/runcible/extensions/iso_importer.rb +1 -1
- data/lib/runcible/extensions/yum_clone_distributor.rb +50 -0
- data/lib/runcible/extensions/yum_distributor.rb +1 -1
- data/lib/runcible/extensions/yum_importer.rb +1 -1
- data/lib/runcible/resources/repository.rb +3 -2
- data/lib/runcible/version.rb +1 -1
- metadata +105 -94
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.2.0-0.20.beta.el6.noarch**
|
8
8
|
|
9
9
|
Current stable Runcible: https://github.com/Katello/runcible/tree/0.3
|
10
10
|
|
@@ -121,6 +121,11 @@ The documentation is built with yard and hosted on Github via the gh-pages branc
|
|
121
121
|
|
122
122
|
## Building and Releasing
|
123
123
|
|
124
|
+
An official release of Runcible should include the release of a gem on rubygems.org and an update to the documentation branch. At a minimum, the following two actions should be performed for each release:
|
125
|
+
|
126
|
+
1. [Build and Release Gem](#gem)
|
127
|
+
2. [Updating Documentation](#updating-documentation)
|
128
|
+
|
124
129
|
### Gem
|
125
130
|
|
126
131
|
While anyone can grab the source and build a new version of the gem, only those with Rubygems.org permissions on the project can release an official version.
|
data/Rakefile
CHANGED
@@ -2,6 +2,14 @@
|
|
2
2
|
require "bundler/gem_tasks"
|
3
3
|
require "rake/testtask"
|
4
4
|
|
5
|
+
def clear_cassettes
|
6
|
+
`rm -rf test/fixtures/vcr_cassettes/*.yml`
|
7
|
+
`rm -rf test/fixtures/vcr_cassettes/extensions/*.yml`
|
8
|
+
`rm -rf test/fixtures/vcr_cassettes/support/*.yml`
|
9
|
+
print "Cassettes cleared\n"
|
10
|
+
end
|
11
|
+
|
12
|
+
|
5
13
|
namespace :test do
|
6
14
|
"Runs the unit tests"
|
7
15
|
Rake::TestTask.new :unit do |t|
|
@@ -31,8 +39,9 @@ namespace :test do
|
|
31
39
|
puts "Running tests for: #{task_name}"
|
32
40
|
end
|
33
41
|
|
42
|
+
clear_cassettes if options[:mode] == 'all' && options[:test_name].nil? && ENV['record'] != 'false'
|
34
43
|
test_runner.run_tests(task_name, options)
|
35
|
-
Rake::Task[:update_test_version].invoke if options[:mode] == "all" && ENV['record'] != false
|
44
|
+
Rake::Task[:update_test_version].invoke if options[:mode] == "all" && ENV['record'] != 'false'
|
36
45
|
end
|
37
46
|
end
|
38
47
|
end
|
@@ -69,9 +78,7 @@ end
|
|
69
78
|
|
70
79
|
desc "Clears out all cassette files"
|
71
80
|
task :clear_cassettes do
|
72
|
-
|
73
|
-
`rm -rf test/fixtures/vcr_cassettes/extensions/*.yml`
|
74
|
-
`rm -rf test/fixtures/vcr_cassettes/support/*.yml`
|
81
|
+
clear_cassettes
|
75
82
|
end
|
76
83
|
|
77
84
|
desc "Runs all tests"
|
@@ -34,6 +34,18 @@ module Runcible
|
|
34
34
|
self.id = params[:id] || SecureRandom.hex(10)
|
35
35
|
params.each{|k,v| self.send("#{k.to_s}=",v)}
|
36
36
|
end
|
37
|
+
|
38
|
+
# Distributor Type id
|
39
|
+
#
|
40
|
+
# @return [string]
|
41
|
+
def type_id
|
42
|
+
self.class.type_id
|
43
|
+
end
|
44
|
+
|
45
|
+
def self.type_id
|
46
|
+
raise NotImplementedError("self.type_id")
|
47
|
+
end
|
48
|
+
|
37
49
|
end
|
38
50
|
end
|
39
51
|
end
|
@@ -26,7 +26,7 @@ module Runcible
|
|
26
26
|
class IsoImporter < Importer
|
27
27
|
ID = 'iso_importer'
|
28
28
|
|
29
|
-
attr_accessor '
|
29
|
+
attr_accessor 'feed', 'ssl_ca_cert', 'ssl_client_cert', 'ssl_client_key',
|
30
30
|
'proxy_url', 'proxy_port', 'proxy_pass', 'proxy_user',
|
31
31
|
'remove_missing_units', 'num_threads', 'max_speed'
|
32
32
|
|
@@ -0,0 +1,50 @@
|
|
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 Extensions
|
29
|
+
class YumCloneDistributor < Distributor
|
30
|
+
|
31
|
+
#optional
|
32
|
+
attr_accessor "source_repo_id", "source_distributor_id", "destination_distributor_id"
|
33
|
+
|
34
|
+
def initialize(params={})
|
35
|
+
super(params)
|
36
|
+
end
|
37
|
+
|
38
|
+
def self.type_id
|
39
|
+
'yum_clone_distributor'
|
40
|
+
end
|
41
|
+
|
42
|
+
def config
|
43
|
+
to_ret = self.as_json
|
44
|
+
to_ret.delete('auto_publish')
|
45
|
+
to_ret.delete('id')
|
46
|
+
to_ret
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
@@ -27,7 +27,7 @@ module Runcible
|
|
27
27
|
ID = 'yum_importer'
|
28
28
|
|
29
29
|
#https://github.com/pulp/pulp/blob/master/rpm-support/plugins/importers/yum_importer/importer.py
|
30
|
-
attr_accessor '
|
30
|
+
attr_accessor 'feed', 'ssl_verify', 'ssl_ca_cert', 'ssl_client_cert', 'ssl_client_key',
|
31
31
|
'proxy_url', 'proxy_port', 'proxy_pass', 'proxy_user',
|
32
32
|
'max_speed', 'verify_size', 'verify_checksum', 'num_threads',
|
33
33
|
'newest', 'remove_old', 'num_old_packages', 'purge_orphaned', 'skip', 'checksum_type',
|
@@ -165,9 +165,10 @@ module Runcible
|
|
165
165
|
#
|
166
166
|
# @param [String] id the id of the repository
|
167
167
|
# @param [String] distributor_id the id of the distributor
|
168
|
+
# @param [Hash] optional optional params
|
168
169
|
# @return [RestClient::Response]
|
169
|
-
def self.publish(id, distributor_id)
|
170
|
-
call(:post, "#{path(id)}actions/publish/", :payload=>{:required=>{:id=>distributor_id}})
|
170
|
+
def self.publish(id, distributor_id, optional={})
|
171
|
+
call(:post, "#{path(id)}actions/publish/", :payload=>{:required=>{:id=>distributor_id}, :optional=>optional})
|
171
172
|
end
|
172
173
|
|
173
174
|
# Deletes the specified distributor from the repository
|
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: 0.4.
|
5
|
-
prerelease:
|
4
|
+
version: 0.4.12
|
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-07-
|
12
|
+
date: 2013-07-30 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,35 +139,36 @@ extensions: []
|
|
131
139
|
extra_rdoc_files: []
|
132
140
|
files:
|
133
141
|
- lib/runcible.rb
|
134
|
-
- lib/runcible/
|
135
|
-
- lib/runcible/
|
136
|
-
- lib/runcible/
|
137
|
-
- lib/runcible/
|
138
|
-
- lib/runcible/
|
139
|
-
- lib/runcible/
|
140
|
-
- lib/runcible/resources/unit.rb
|
141
|
-
- lib/runcible/resources/role.rb
|
142
|
-
- lib/runcible/resources/repository_schedule.rb
|
143
|
-
- lib/runcible/resources/task.rb
|
144
|
-
- lib/runcible/extensions/package_group.rb
|
142
|
+
- lib/runcible/version.rb
|
143
|
+
- lib/runcible/base.rb
|
144
|
+
- lib/runcible/extensions/package_category.rb
|
145
|
+
- lib/runcible/extensions/yum_clone_distributor.rb
|
146
|
+
- lib/runcible/extensions/errata.rb
|
147
|
+
- lib/runcible/extensions/distributor.rb
|
145
148
|
- lib/runcible/extensions/consumer_group.rb
|
146
|
-
- lib/runcible/extensions/
|
147
|
-
- lib/runcible/extensions/rpm.rb
|
148
|
-
- lib/runcible/extensions/yum_distributor.rb
|
149
|
+
- lib/runcible/extensions/export_distributor.rb
|
149
150
|
- lib/runcible/extensions/consumer.rb
|
150
151
|
- lib/runcible/extensions/repository.rb
|
151
|
-
- lib/runcible/extensions/
|
152
|
-
- lib/runcible/extensions/
|
152
|
+
- lib/runcible/extensions/iso_importer.rb
|
153
|
+
- lib/runcible/extensions/yum_distributor.rb
|
154
|
+
- lib/runcible/extensions/rpm.rb
|
155
|
+
- lib/runcible/extensions/iso_distributor.rb
|
153
156
|
- lib/runcible/extensions/unit.rb
|
154
|
-
- lib/runcible/extensions/
|
157
|
+
- lib/runcible/extensions/yum_importer.rb
|
158
|
+
- lib/runcible/extensions/package_group.rb
|
159
|
+
- lib/runcible/extensions/importer.rb
|
155
160
|
- lib/runcible/extensions/yum_repo_metadata_file.rb
|
156
|
-
- lib/runcible/extensions/iso_distributor.rb
|
157
|
-
- lib/runcible/extensions/errata.rb
|
158
|
-
- lib/runcible/extensions/iso_importer.rb
|
159
161
|
- lib/runcible/extensions/distribution.rb
|
160
|
-
- lib/runcible/
|
161
|
-
- lib/runcible/
|
162
|
-
- lib/runcible/
|
162
|
+
- lib/runcible/resources/role.rb
|
163
|
+
- lib/runcible/resources/consumer_group.rb
|
164
|
+
- lib/runcible/resources/consumer.rb
|
165
|
+
- lib/runcible/resources/repository_schedule.rb
|
166
|
+
- lib/runcible/resources/task.rb
|
167
|
+
- lib/runcible/resources/event_notifier.rb
|
168
|
+
- lib/runcible/resources/repository.rb
|
169
|
+
- lib/runcible/resources/user.rb
|
170
|
+
- lib/runcible/resources/unit.rb
|
171
|
+
- lib/runcible/resources/repository_group.rb
|
163
172
|
- LICENSE
|
164
173
|
- Rakefile
|
165
174
|
- Gemfile
|
@@ -167,26 +176,28 @@ files:
|
|
167
176
|
- CONTRIBUTING.md
|
168
177
|
homepage: https://github.com/Katello/runcible
|
169
178
|
licenses: []
|
170
|
-
post_install_message:
|
179
|
+
post_install_message:
|
171
180
|
rdoc_options: []
|
172
181
|
require_paths:
|
173
182
|
- lib
|
174
183
|
required_ruby_version: !ruby/object:Gem::Requirement
|
175
|
-
none: false
|
176
184
|
requirements:
|
177
|
-
- -
|
185
|
+
- - ">="
|
178
186
|
- !ruby/object:Gem::Version
|
179
|
-
version:
|
180
|
-
|
187
|
+
version: !binary |-
|
188
|
+
MA==
|
181
189
|
none: false
|
190
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
182
191
|
requirements:
|
183
|
-
- -
|
192
|
+
- - ">="
|
184
193
|
- !ruby/object:Gem::Version
|
185
|
-
version:
|
194
|
+
version: !binary |-
|
195
|
+
MA==
|
196
|
+
none: false
|
186
197
|
requirements: []
|
187
|
-
rubyforge_project:
|
188
|
-
rubygems_version: 1.8.
|
189
|
-
signing_key:
|
198
|
+
rubyforge_project:
|
199
|
+
rubygems_version: 1.8.24
|
200
|
+
signing_key:
|
190
201
|
specification_version: 3
|
191
202
|
summary: ''
|
192
203
|
test_files: []
|