release_tagger 0.3.1 → 0.3.2

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.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/VERSION +1 -1
  3. data/lib/release_tagger/repo.rb +19 -8
  4. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3b097254542e2fc3d1a364a7862242f6b0c090dd
4
- data.tar.gz: f2aded664428fda3dee0e887c8b29ccfee07f590
3
+ metadata.gz: 1dd7fc6bfa899294769597fe1f7399648a80a6ed
4
+ data.tar.gz: 80c15d85980194be4598b455f823277d7b27de2b
5
5
  SHA512:
6
- metadata.gz: 9dcb31c9eab4e9df7241ce1bb546f520c2da0eaac9689d213638d3c22d72eb7c9371da0d8d0b5cf8adeafc03959cb7b38c65beccff76bd0885720c7e1366e843
7
- data.tar.gz: b41b19afd2395f9f15086c1cdf08929324530115a7b75cab8a83e649703d48ed5a1bf5f952fb9f84094e91adfde687a1aeb6eb397dbd4acfa8847b016831d1e5
6
+ metadata.gz: fb2c9044cfeff40349cee2730224ed02be900ee92f4dd0dcd24718c3a39480e25c6005584ab158bfb9f4abd06dd91bc070abc0f8a8aa52e9f86a1d89aa49b089
7
+ data.tar.gz: 59dcbb84de01abeaeee2682ccf5d0583a0c6d1d06babb9b7a16cca7b3e293d44ad92322af248cb28cd6380b6009f43d76c894d48ee71488c6b3c607bb8eae906
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.1
1
+ 0.3.2
@@ -7,7 +7,8 @@ module ReleaseTagger
7
7
  PACKAGECLOUD_ACCOUNT = 'lostmyname'
8
8
  REPO = 'qa'
9
9
  ITEMS_PER_PAGE = 1000
10
- VERSIONS_URL = "https://packagecloud.io/api/v1/repos/#{PACKAGECLOUD_ACCOUNT}/#{REPO}/package/rpm/el/7/%s/x86_64/versions.json?per_page=#{ITEMS_PER_PAGE}"
10
+ ARCHS = %w(noarch x86_64)
11
+ VERSIONS_URL = "https://packagecloud.io/api/v1/repos/#{PACKAGECLOUD_ACCOUNT}/#{REPO}/package/rpm/el/7/%s/%s/versions.json?per_page=#{ITEMS_PER_PAGE}"
11
12
 
12
13
  def get_api_token
13
14
  home_config_file = Pathname.new(File.join(File.expand_path('~'), '.release_tagger', 'packagecloud_token'))
@@ -32,13 +33,13 @@ Consider setting your packagecloud api token in any of:
32
33
  package_cloud_api_token
33
34
  end
34
35
 
35
- def get_max_package_version(package_name)
36
+ def get_json_response(url)
36
37
  pc_api_token = get_api_token
37
- uri = URI.parse(VERSIONS_URL % package_name)
38
+ uri = URI.parse(url)
38
39
  req = Net::HTTP::Get.new(uri)
39
40
  req.basic_auth pc_api_token, ''
40
41
  response = Net::HTTP.start(uri.hostname, uri.port, :use_ssl => uri.scheme == 'https') {|http| http.request(req)}
41
-
42
+ puts url
42
43
  unless response.is_a?(Net::HTTPOK)
43
44
  puts "Error trying to get latest version of package #{package_name}"
44
45
  puts response.code
@@ -46,10 +47,20 @@ Consider setting your packagecloud api token in any of:
46
47
  end
47
48
 
48
49
  res = JSON.parse(response.body)
49
- release_version = '1.0.0'
50
- unless res == []
51
- latest_package = res.select { |package| package['name'] == package_name}.max_by{ |package| package['version']}
52
- release_version = latest_package['version']
50
+ res
51
+
52
+ end
53
+
54
+ def get_max_package_version(package_name)
55
+ release_version = '0.0.0'
56
+ ARCHS.each do |arch|
57
+ res = get_json_response(VERSIONS_URL % [package_name, arch])
58
+ unless res == []
59
+ latest_package = res.select { |package| package['name'] == package_name}.max_by{ |package| package['version']}
60
+ if Gem::Version.new(latest_package['version']) > Gem::Version.new(release_version)
61
+ release_version = latest_package['version']
62
+ end
63
+ end
53
64
  end
54
65
  release_version
55
66
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: release_tagger
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Simon Coffey