pkgwat 0.0.3 → 0.1.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.
- data/lib/pkgwat.rb +62 -0
- data/lib/pkgwat/version.rb +1 -1
- metadata +4 -4
data/lib/pkgwat.rb
CHANGED
@@ -17,8 +17,13 @@ module Pkgwat
|
|
17
17
|
PACKAGES_URL_LIST = "https://apps.fedoraproject.org/packages/fcomm_connector/xapian/query/search_packages"
|
18
18
|
BUGS_URL = "https://apps.fedoraproject.org/packages/fcomm_connector/bugzilla/query/query_bugs"
|
19
19
|
BUILDS_URL = "https://apps.fedoraproject.org/packages/fcomm_connector/koji/query/query_builds"
|
20
|
+
CHANGELOG_URL = "https://apps.fedoraproject.org/packages/fcomm_connector/koji/query/query_changelogs"
|
21
|
+
CONTENT_URL = "https://apps.fedoraproject.org/packages/fcomm_connector/yum/get_file_tree"
|
22
|
+
UPDATES_URL = "https://apps.fedoraproject.org/packages/fcomm_connector/bodhi/query/query_updates"
|
20
23
|
KOJI_BUILD_STATES = ["all" => "", "f17" =>"17", "f16" => "16", "f15" => "15", "e16" => "16", "e15" => "15"]
|
21
24
|
BUGZILLA_RELEASEA = ["all" => "", "building" =>"0", "success" => "1", "failed" => "2", "cancelled" => "3", "deleted" => "4"]
|
25
|
+
BODHI_REALEASE = ["all", "f17", "f16", "f15", "e16", "e15"]
|
26
|
+
BODHI_ARCH = ["x86_64", "i686"]
|
22
27
|
|
23
28
|
def self.check_gem(name, version, distros = DEFAULT_DISTROS, throw_ex = false)
|
24
29
|
puts "Checking #{name} #{version}...\n"
|
@@ -95,6 +100,59 @@ module Pkgwat
|
|
95
100
|
parse_results(response.body)
|
96
101
|
end
|
97
102
|
|
103
|
+
def self.get_changelog(pattern, num=nil, start=0)
|
104
|
+
num ||= total_rows(pattern, "builds", BUILDS_URL)
|
105
|
+
build_id = get_builds(pattern)[0]['build_id']
|
106
|
+
query = {"filters"=> {"build_id"=> build_id}, "rows_per_page"=> num, "start_row"=> start}
|
107
|
+
url = CHANGELOG_URL + "/" + query.to_json
|
108
|
+
uri = URI.parse(URI.escape(url))
|
109
|
+
response = submit_request(uri)
|
110
|
+
parse_results(response.body)
|
111
|
+
end
|
112
|
+
|
113
|
+
def self.get_contents(pattern, arch='x86_64', release='Rawhide')
|
114
|
+
if !BODHI_ARCH.include? arch
|
115
|
+
return "Invalid yum arch."
|
116
|
+
end
|
117
|
+
if !BODHI_REALEASE.include? release
|
118
|
+
return "Invalid bodhi release."
|
119
|
+
end
|
120
|
+
url = CONTENT_URL + "?package=#{pattern}&arch=#{arch}&repo=#{release}"
|
121
|
+
uri = URI.parse(URI.escape(url))
|
122
|
+
response = submit_request(uri)
|
123
|
+
JSON.parse(response.body)
|
124
|
+
end
|
125
|
+
|
126
|
+
def self.get_releases(pattern, num=nil, start=0)
|
127
|
+
num ||= total_rows(pattern, "releases", PACKAGES_URL)
|
128
|
+
query = {"filters"=> {"package"=> pattern}, "rows_per_page"=> num, "start_row"=> start}
|
129
|
+
url = PACKAGES_URL + "/" + query.to_json
|
130
|
+
uri = URI.parse(URI.escape(url))
|
131
|
+
response = submit_request(uri)
|
132
|
+
parse_results(response.body)
|
133
|
+
end
|
134
|
+
|
135
|
+
def self.get_updates(pattern, status, release, num=nil, start=0)
|
136
|
+
num ||= total_rows(pattern, "updates", UPDATES_URL)
|
137
|
+
if !BODHI_REALEASE.include? status
|
138
|
+
return "Invalid bodhi state."
|
139
|
+
end
|
140
|
+
if !BODHI_REALEASE.include? release
|
141
|
+
return "Invalid bodhi release."
|
142
|
+
end
|
143
|
+
if status == "all"
|
144
|
+
status = ""
|
145
|
+
end
|
146
|
+
if release == "all"
|
147
|
+
release = ""
|
148
|
+
end
|
149
|
+
query = {"rows_per_page"=> num, "start_row"=> start, "filters"=> {"package"=> pattern, "release" => release, "state"=> status}}
|
150
|
+
url = PACKAGES_URL + "/" + query.to_json
|
151
|
+
uri = URI.parse(URI.escape(url))
|
152
|
+
response = submit_request(uri)
|
153
|
+
parse_results(response.body)
|
154
|
+
end
|
155
|
+
|
98
156
|
def self.search_params(gem)
|
99
157
|
filters = { :package => package_name(gem) }
|
100
158
|
{ :filters => filters }
|
@@ -128,6 +186,10 @@ module Pkgwat
|
|
128
186
|
query = {"rows_per_page"=> 10, "start_row"=> 0, "filters"=> {"state"=> "", "package"=> pattern}}
|
129
187
|
elsif type == "bugs"
|
130
188
|
query = {"filters"=> {"package"=> pattern, "version"=> ""}, "rows_per_page"=> 10, "start_row"=> 0}
|
189
|
+
elsif type == "releases"
|
190
|
+
query = {"filters"=> {"package"=> pattern}, "rows_per_page"=> 10, "start_row"=> 0}
|
191
|
+
elsif type == "updates"
|
192
|
+
query = {"rows_per_page"=> 10, "start_row"=> 0, "filters"=> {"package"=> pattern, "release" => "all", "state"=> "all"}}
|
131
193
|
end
|
132
194
|
url = type_url + "/" + query.to_json
|
133
195
|
uri = URI.parse(URI.escape(url))
|
data/lib/pkgwat/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pkgwat
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-01-
|
12
|
+
date: 2013-01-16 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: nokogiri
|
@@ -139,7 +139,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
139
139
|
version: '0'
|
140
140
|
segments:
|
141
141
|
- 0
|
142
|
-
hash:
|
142
|
+
hash: 2352334897922640855
|
143
143
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
144
144
|
none: false
|
145
145
|
requirements:
|
@@ -148,7 +148,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
148
148
|
version: '0'
|
149
149
|
segments:
|
150
150
|
- 0
|
151
|
-
hash:
|
151
|
+
hash: 2352334897922640855
|
152
152
|
requirements: []
|
153
153
|
rubyforge_project: pkgwat
|
154
154
|
rubygems_version: 1.8.24
|