getv 2.1.0 → 2.1.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: db69c25dd1811c324c47e3cce6a8d3ce4622ad2fcad25ae4a3703924ac332419
4
- data.tar.gz: ba83a11669af015add4a7b35269d5c16e187fc81020adac07c0fb8de116ab431
3
+ metadata.gz: '09cc60d4212ca31e846439b931041166f3fca8cdf1e7dfc6442ee0f0c95c29e5'
4
+ data.tar.gz: 66b94dd425781d6824abfb22bcafc47723c4025f8a8c3b3c8a5f3bf402da92a3
5
5
  SHA512:
6
- metadata.gz: 966f194d7fdaa930a8f60ca9500b46d756b3d67d735c1cc5a64c8fc6ec802cde7a3bf8ce6b1c8d0707acd59f7d6d2c9120b7a1c167089514cc72589dd6837120
7
- data.tar.gz: ae5a6bee53a79a2902522126c83c30664195793c47f6148a32c663dc87a577527e0c9fbaf8b7ba6a99a64c8e1b0752213d47f73bf418c8512e7e2f20ef973f4d
6
+ metadata.gz: 7d5207d6ed38b9b06b275d1f0b47503b490faca73427b39509cd79851ba7737e79f0be2247d8969945e9c2697b9a424f95d7e3c8f6213a8582625ceca2005833
7
+ data.tar.gz: fc950d0cd4bab100cb665d9d47719fbf5a3c0fe471a6bee2325557e52c6257063c29928466a8aa99df507b77b7466757988f09db234f05546c8fa89a0ce1b540
data/README.md CHANGED
@@ -39,7 +39,7 @@ SYNOPSIS
39
39
 
40
40
 
41
41
  VERSION
42
- 2.0.0
42
+ 2.1.3
43
43
 
44
44
 
45
45
 
@@ -72,7 +72,7 @@ Show the latest available version of the `getv` gem:
72
72
 
73
73
  ```console
74
74
  $ getv --latest gem getv
75
- 2.0.0
75
+ 2.1.3
76
76
  ```
77
77
 
78
78
  Show all `dep` GitHub release versions in JSON:
@@ -97,7 +97,7 @@ $ getv github_release --invalid_versions wez/atomicparsley
97
97
  Show the latest stable version of Kubernetes using the release text file URL:
98
98
 
99
99
  ```console
100
- $ getv -l get --url=https://storage.googleapis.com/kubernetes-release/release/stable.txt kubernetes
100
+ $ getv -l text --url=https://storage.googleapis.com/kubernetes-release/release/stable.txt kubernetes
101
101
  1.23.2
102
102
  ```
103
103
 
@@ -36,12 +36,20 @@ module Getv
36
36
  d_opts
37
37
  end
38
38
 
39
- def retrieve_versions
39
+ def retrieve_versions # rubocop:disable Metrics/MethodLength,Metrics/AbcSize
40
40
  require 'docker_registry2'
41
+ retries ||= 0
41
42
  docker = DockerRegistry2.connect(opts[:url], docker_opts)
42
- docker.tags("#{opts[:owner]}/#{opts[:repo]}")['tags']
43
+ docker.tags("#{opts[:owner]}/#{opts[:repo]}")['tags'] || []
43
44
  rescue DockerRegistry2::NotFound
44
45
  []
46
+ rescue StandardError => e
47
+ if (retries += 1) < 4
48
+ retry
49
+ else
50
+ puts "Error fetching tags for docker image #{opts[:url]}/#{opts[:owner]}/#{opts[:repo]}:"
51
+ puts e.message
52
+ end
45
53
  end
46
54
  end
47
55
  end
@@ -14,9 +14,12 @@ module Getv
14
14
 
15
15
  def retrieve_versions
16
16
  require 'json'
17
+ retries ||= 0
17
18
  JSON.parse(get("https://rubygems.org/api/v1/versions/#{opts[:gem]}.json")).map do |v|
18
19
  v['number']
19
20
  end
21
+ rescue StandardError
22
+ retry if (retries += 1) < 4
20
23
  end
21
24
  end
22
25
  end
@@ -18,10 +18,13 @@ module Getv
18
18
 
19
19
  private
20
20
 
21
- def retrieve_versions
21
+ def retrieve_versions # rubocop:disable Metrics/AbcSize
22
+ retries ||= 0
22
23
  github.commits("#{opts[:owner]}/#{opts[:repo]}", opts[:branch]).map do |c|
23
24
  "#{DateTime.parse(c[:commit][:author][:date].to_s).strftime('%Y%m%d%H%M%S')},#{c[:sha]}"
24
25
  end
26
+ rescue StandardError
27
+ retry if (retries += 1) < 4
25
28
  end
26
29
  end
27
30
  end
@@ -14,7 +14,10 @@ module Getv
14
14
  private
15
15
 
16
16
  def retrieve_versions
17
+ retries ||= 0
17
18
  github.releases("#{opts[:owner]}/#{opts[:repo]}").map(&:tag_name)
19
+ rescue StandardError
20
+ retry if (retries += 1) < 4
18
21
  end
19
22
  end
20
23
  end
@@ -14,7 +14,10 @@ module Getv
14
14
  private
15
15
 
16
16
  def retrieve_versions
17
+ retries ||= 0
17
18
  github.tags("#{opts[:owner]}/#{opts[:repo]}").map { |t| t[:name] }
19
+ rescue StandardError
20
+ retry if (retries += 1) < 4
18
21
  end
19
22
  end
20
23
  end
@@ -14,9 +14,12 @@ module Getv
14
14
 
15
15
  def retrieve_versions
16
16
  require 'yaml'
17
+ retries ||= 0
17
18
  YAML.safe_load(get("#{opts[:url]}/index.yaml")).fetch('entries', {}).fetch(opts[:chart], []).map do |e|
18
19
  e['version']
19
20
  end
21
+ rescue StandardError
22
+ retry if (retries += 1) < 4
20
23
  end
21
24
  end
22
25
  end
@@ -14,7 +14,10 @@ module Getv
14
14
 
15
15
  def retrieve_versions
16
16
  require 'json'
17
+ retries ||= 0
17
18
  JSON.parse(get("https://registry.npmjs.org/#{opts[:npm]}"))['versions'].keys
19
+ rescue StandardError
20
+ retry if (retries += 1) < 4
18
21
  end
19
22
  end
20
23
  end
@@ -14,7 +14,10 @@ module Getv
14
14
 
15
15
  def retrieve_versions
16
16
  require 'json'
17
+ retries ||= 0
17
18
  JSON.parse(get("https://pypi.org/pypi/#{opts[:pypi]}/json"))['releases'].keys
19
+ rescue StandardError
20
+ retry if (retries += 1) < 4
18
21
  end
19
22
  end
20
23
  end
@@ -13,7 +13,10 @@ module Getv
13
13
  private
14
14
 
15
15
  def retrieve_versions
16
+ retries ||= 0
16
17
  get(opts[:url]).split("\n")
18
+ rescue StandardError
19
+ retry if (retries += 1) < 4
17
20
  end
18
21
  end
19
22
  end
@@ -13,8 +13,11 @@ module Getv
13
13
  private
14
14
 
15
15
  def retrieve_versions
16
+ retries ||= 0
16
17
  require 'nokogiri'
17
18
  Nokogiri::XML(get(opts[:url])).xpath(opts[:xpath]).map(&:text)
19
+ rescue StandardError
20
+ retry if (retries += 1) < 4
18
21
  end
19
22
  end
20
23
  end
data/lib/getv/package.rb CHANGED
@@ -66,7 +66,7 @@ module Getv
66
66
  end
67
67
 
68
68
  def update_versions # rubocop:disable Metrics/PerceivedComplexity,Metrics/MethodLength,Metrics/CyclomaticComplexity,Metrics/AbcSize
69
- versions = retrieve_versions
69
+ versions = retrieve_versions || []
70
70
  versions.sort! if instance_of?(Getv::Package::GitHub::Commit)
71
71
  select_pattern = Regexp.new(opts[:select_search])
72
72
  versions.select! { |v| v =~ select_pattern }
data/lib/getv/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Getv
4
- VERSION = '2.1.0'
4
+ VERSION = '2.1.3'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: getv
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.0
4
+ version: 2.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - harbottle
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-03-10 00:00:00.000000000 Z
11
+ date: 2022-05-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gli