circleci-cli 1.0.0 → 3.0.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.
@@ -8,12 +8,14 @@ module CircleCI
8
8
  @hash = hash
9
9
  end
10
10
 
11
- def user_name
12
- @hash['name']
11
+ def pusher_id
12
+ @hash['pusher_id']
13
13
  end
14
14
 
15
- def self.me
16
- Account.new(CircleCi::User.me.body)
15
+ class << self
16
+ def me
17
+ Account.new(CircleCi::User.new.me.body)
18
+ end
17
19
  end
18
20
  end
19
21
  end
@@ -5,6 +5,7 @@ module CircleCI
5
5
  module Response
6
6
  class Action
7
7
  attr_reader :name, :status, :run_time_millis
8
+
8
9
  def initialize(hash)
9
10
  @hash = hash
10
11
  @name = hash['name']
@@ -11,6 +11,12 @@ module CircleCI
11
11
  .map { |b| Build.new(b) }
12
12
  end
13
13
 
14
+ def failed(username, reponame)
15
+ CircleCi::Project.new(username, reponame, 'github').recent_builds(filter: 'failed')
16
+ .body
17
+ .map { |b| Build.new(b) }
18
+ end
19
+
14
20
  def branch(username, reponame, branch)
15
21
  CircleCi::Project.new(username, reponame, 'github').recent_builds_branch(branch)
16
22
  .body
@@ -30,28 +36,29 @@ module CircleCI
30
36
  end
31
37
  end
32
38
 
33
- def initialize(hash)
34
- @hash = hash
35
- end
39
+ attr_reader :username, :build_number, :reponame, :branch, :status, :author_name, :start_time,
40
+ :user, :workflow_name, :workflow_job_name
36
41
 
37
- def username
38
- @hash['username']
39
- end
40
-
41
- def reponame
42
- @hash['reponame']
43
- end
44
-
45
- def status
46
- @hash['status']
42
+ def initialize(hash) # rubocop:disable Metrics/MethodLength
43
+ @hash = hash
44
+ @username = hash['username']
45
+ @build_number = hash['build_num']
46
+ @reponame = hash['reponame']
47
+ @branch = hash['branch']
48
+ @status = hash['status']
49
+ @author_name = hash['author_name']
50
+ @start_time = hash['start_time']
51
+ @user = hash.dig('user', 'login')
52
+ @workflow_name = hash.dig('workflows', 'workflow_name')
53
+ @workflow_job_name = hash.dig('workflows', 'job_name')
47
54
  end
48
55
 
49
- def build_number
50
- @hash['build_num']
56
+ def running?
57
+ status == 'running' || status || 'queued'
51
58
  end
52
59
 
53
- def running?
54
- status == 'running'
60
+ def finished?
61
+ status == 'success' || status == 'canceled' || status == 'failed' || status == 'no_tests'
55
62
  end
56
63
 
57
64
  def channel_name
@@ -64,13 +71,13 @@ module CircleCI
64
71
 
65
72
  def information
66
73
  [
67
- @hash['build_num'],
68
- colorize_by_status(@hash['status'], @hash['status']),
69
- colorize_by_status(@hash['branch'], @hash['status']),
70
- @hash['author_name'],
74
+ build_number,
75
+ colorize_by_status(status, status),
76
+ colorize_by_status(branch, status),
77
+ author_name,
71
78
  (@hash['subject'] || '').slice(0..60),
72
79
  format_time(@hash['build_time_millis']),
73
- @hash['start_time']
80
+ start_time
74
81
  ]
75
82
  end
76
83
 
@@ -83,10 +90,10 @@ module CircleCI
83
90
 
84
91
  def colorize_by_status(string, status)
85
92
  case status
86
- when 'success', 'fixed' then string.green
87
- when 'canceled' then string.yellow
88
- when 'failed' then string.red
89
- when 'no_tests', 'not_run' then string.light_black
93
+ when 'success', 'fixed' then Printer.colorize_green(string)
94
+ when 'canceled' then Printer.colorize_yellow(string)
95
+ when 'failed' then Printer.colorize_red(string)
96
+ when 'no_tests', 'not_run' then Printer.colorize_light_black(string)
90
97
  else string
91
98
  end
92
99
  end
@@ -94,8 +101,8 @@ module CircleCI
94
101
  def format_time(time)
95
102
  return '' unless time
96
103
 
97
- minute = format('%02d', time / 1000 / 60)
98
- second = format('%02d', (time / 1000) % 60)
104
+ minute = format('%<time>02d', time: time / 1000 / 60)
105
+ second = format('%<time>02d', time: (time / 1000) % 60)
99
106
  "#{minute}:#{second}"
100
107
  end
101
108
  end
@@ -4,8 +4,7 @@ module CircleCI
4
4
  module CLI
5
5
  module Response
6
6
  class Step
7
- attr_reader :type
8
- attr_reader :status
7
+ attr_reader :type, :status
9
8
 
10
9
  def initialize(type, hash)
11
10
  @type = type
@@ -2,6 +2,6 @@
2
2
 
3
3
  module CircleCI
4
4
  module CLI
5
- VERSION = '1.0.0'
5
+ VERSION = '3.0.0'
6
6
  end
7
7
  end
Binary file
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: circleci-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - unhappychoice
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-09-22 00:00:00.000000000 Z
11
+ date: 2020-08-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: circleci
@@ -24,20 +24,6 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: 2.0.2
27
- - !ruby/object:Gem::Dependency
28
- name: colorize
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - "~>"
32
- - !ruby/object:Gem::Version
33
- version: 0.8.1
34
- type: :runtime
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - "~>"
39
- - !ruby/object:Gem::Version
40
- version: 0.8.1
41
27
  - !ruby/object:Gem::Dependency
42
28
  name: faraday
43
29
  requirement: !ruby/object:Gem::Requirement
@@ -47,7 +33,7 @@ dependencies:
47
33
  version: '0.14'
48
34
  - - "<"
49
35
  - !ruby/object:Gem::Version
50
- version: '0.16'
36
+ version: '1.1'
51
37
  type: :runtime
52
38
  prerelease: false
53
39
  version_requirements: !ruby/object:Gem::Requirement
@@ -57,7 +43,7 @@ dependencies:
57
43
  version: '0.14'
58
44
  - - "<"
59
45
  - !ruby/object:Gem::Version
60
- version: '0.16'
46
+ version: '1.1'
61
47
  - !ruby/object:Gem::Dependency
62
48
  name: highline
63
49
  requirement: !ruby/object:Gem::Requirement
@@ -82,16 +68,22 @@ dependencies:
82
68
  name: launchy
83
69
  requirement: !ruby/object:Gem::Requirement
84
70
  requirements:
85
- - - "~>"
71
+ - - ">="
86
72
  - !ruby/object:Gem::Version
87
73
  version: 2.4.3
74
+ - - "<"
75
+ - !ruby/object:Gem::Version
76
+ version: 2.6.0
88
77
  type: :runtime
89
78
  prerelease: false
90
79
  version_requirements: !ruby/object:Gem::Requirement
91
80
  requirements:
92
- - - "~>"
81
+ - - ">="
93
82
  - !ruby/object:Gem::Version
94
83
  version: 2.4.3
84
+ - - "<"
85
+ - !ruby/object:Gem::Version
86
+ version: 2.6.0
95
87
  - !ruby/object:Gem::Dependency
96
88
  name: pusher-client
97
89
  requirement: !ruby/object:Gem::Requirement
@@ -115,7 +107,7 @@ dependencies:
115
107
  version: '0.26'
116
108
  - - "<"
117
109
  - !ruby/object:Gem::Version
118
- version: '0.29'
110
+ version: '1.1'
119
111
  type: :runtime
120
112
  prerelease: false
121
113
  version_requirements: !ruby/object:Gem::Requirement
@@ -125,7 +117,7 @@ dependencies:
125
117
  version: '0.26'
126
118
  - - "<"
127
119
  - !ruby/object:Gem::Version
128
- version: '0.29'
120
+ version: '1.1'
129
121
  - !ruby/object:Gem::Dependency
130
122
  name: terminal-notifier
131
123
  requirement: !ruby/object:Gem::Requirement
@@ -158,16 +150,22 @@ dependencies:
158
150
  name: thor
159
151
  requirement: !ruby/object:Gem::Requirement
160
152
  requirements:
161
- - - "~>"
153
+ - - ">="
162
154
  - !ruby/object:Gem::Version
163
- version: 0.20.0
155
+ version: '0.20'
156
+ - - "<"
157
+ - !ruby/object:Gem::Version
158
+ version: '1.1'
164
159
  type: :runtime
165
160
  prerelease: false
166
161
  version_requirements: !ruby/object:Gem::Requirement
167
162
  requirements:
168
- - - "~>"
163
+ - - ">="
164
+ - !ruby/object:Gem::Version
165
+ version: '0.20'
166
+ - - "<"
169
167
  - !ruby/object:Gem::Version
170
- version: 0.20.0
168
+ version: '1.1'
171
169
  - !ruby/object:Gem::Dependency
172
170
  name: bundler
173
171
  requirement: !ruby/object:Gem::Requirement
@@ -196,6 +194,20 @@ dependencies:
196
194
  - - ">="
197
195
  - !ruby/object:Gem::Version
198
196
  version: '0'
197
+ - !ruby/object:Gem::Dependency
198
+ name: github_changelog_generator
199
+ requirement: !ruby/object:Gem::Requirement
200
+ requirements:
201
+ - - ">="
202
+ - !ruby/object:Gem::Version
203
+ version: '0'
204
+ type: :development
205
+ prerelease: false
206
+ version_requirements: !ruby/object:Gem::Requirement
207
+ requirements:
208
+ - - ">="
209
+ - !ruby/object:Gem::Version
210
+ version: '0'
199
211
  - !ruby/object:Gem::Dependency
200
212
  name: guard
201
213
  requirement: !ruby/object:Gem::Requirement
@@ -302,8 +314,12 @@ executables:
302
314
  extensions: []
303
315
  extra_rdoc_files: []
304
316
  files:
317
+ - ".all-contributorsrc"
305
318
  - ".circleci/config.yml"
319
+ - ".github/workflows/test.yml"
306
320
  - ".rubocop.yml"
321
+ - ".ruby-version"
322
+ - CHANGELOG.md
307
323
  - CODE_OF_CONDUCT.md
308
324
  - Gemfile
309
325
  - Gemfile.lock
@@ -326,6 +342,8 @@ files:
326
342
  - lib/circleci/cli/command/projects_command.rb
327
343
  - lib/circleci/cli/command/retry_command.rb
328
344
  - lib/circleci/cli/command/watch_command.rb
345
+ - lib/circleci/cli/command/watch_command/build_repository.rb
346
+ - lib/circleci/cli/command/watch_command/build_watcher.rb
329
347
  - lib/circleci/cli/networking.rb
330
348
  - lib/circleci/cli/networking/pusher_client.rb
331
349
  - lib/circleci/cli/printer.rb
@@ -353,7 +371,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
353
371
  requirements:
354
372
  - - ">="
355
373
  - !ruby/object:Gem::Version
356
- version: '0'
374
+ version: '2.5'
357
375
  required_rubygems_version: !ruby/object:Gem::Requirement
358
376
  requirements:
359
377
  - - ">="