jiraMule 0.1.2 → 0.3.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.
@@ -1,3 +1,4 @@
1
+ require 'chronic'
1
2
  require 'chronic_duration'
2
3
  require 'date'
3
4
  require 'JiraMule/jiraUtils'
@@ -7,8 +8,10 @@ command :logwork do |c|
7
8
  c.summary = 'Log work spent'
8
9
  c.description = %{Log time spent on a issue}
9
10
  c.option '-m', '--message MSG', String, 'Message to add to work log'
10
- c.option '--date DATE', String, 'When this work was done'
11
+ c.option '--date DATE', String, 'When this work was done.'
11
12
  c.example 'Log some work done on an issue', %{jm logwork BUG-42 1h 12m}
13
+ c.example 'Log work for a specific day', %{jm logwork BUG-42 1h --date 7-feb-2017}
14
+ c.example 'Log work for yesterday', %{jm logwork BUG-42 1h --date yesterday}
12
15
 
13
16
  c.action do |args, options|
14
17
  options.default :message => ''
@@ -18,17 +21,18 @@ command :logwork do |c|
18
21
  ts = ChronicDuration.parse(args.join(' '))
19
22
 
20
23
  unless options.date.nil? then
21
- options.date = DateTime.parse(options.date)
22
- if options.date.day_fraction.numerator == 0 then
23
- # No time component. Need to add timezone...
24
- offset = -(Time.now.gmt_offset/3600)
25
- options.date += Rational(offset,24)
26
- end
24
+ options.date = Chronic.parse(options.date)
25
+ raise "Invlaid --date" if options.date.nil?
26
+ # if options.date.day_fraction.numerator == 0 then
27
+ # # No time component. Need to add timezone...
28
+ # offset = -(Time.now.gmt_offset/3600)
29
+ # options.date += Rational(offset,24)
30
+ # end
27
31
  end
28
32
 
29
33
  begin
30
34
  jira.logWork(key, ts, options.message, options.date)
31
- rescue JiraUtilsException => e
35
+ rescue JiraMule::JiraUtilsException => e
32
36
  pp e.response.body
33
37
  end
34
38
 
data/lib/jiraMule/http.rb CHANGED
@@ -100,7 +100,7 @@ module JiraMule
100
100
  end
101
101
  else
102
102
  showHttpError(request, response)
103
- raise response
103
+ #raise response
104
104
  end
105
105
  end
106
106
  end
@@ -1,3 +1,3 @@
1
1
  module JiraMule
2
- VERSION = '0.1.2'.freeze
2
+ VERSION = '0.3.0'.freeze
3
3
  end
metadata CHANGED
@@ -1,195 +1,223 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jiraMule
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Conrad Tadpol Tilstra
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-12-28 00:00:00.000000000 Z
11
+ date: 2020-03-06 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: chronic
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 0.10.2
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 0.10.2
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: chronic_duration
15
29
  requirement: !ruby/object:Gem::Requirement
16
30
  requirements:
17
- - - ~>
31
+ - - "~>"
18
32
  - !ruby/object:Gem::Version
19
33
  version: 0.10.6
20
34
  type: :runtime
21
35
  prerelease: false
22
36
  version_requirements: !ruby/object:Gem::Requirement
23
37
  requirements:
24
- - - ~>
38
+ - - "~>"
25
39
  - !ruby/object:Gem::Version
26
40
  version: 0.10.6
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: commander
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
- - - ~>
45
+ - - "~>"
32
46
  - !ruby/object:Gem::Version
33
47
  version: 4.4.0
34
48
  type: :runtime
35
49
  prerelease: false
36
50
  version_requirements: !ruby/object:Gem::Requirement
37
51
  requirements:
38
- - - ~>
52
+ - - "~>"
39
53
  - !ruby/object:Gem::Version
40
54
  version: 4.4.0
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: inifile
43
57
  requirement: !ruby/object:Gem::Requirement
44
58
  requirements:
45
- - - ~>
59
+ - - "~>"
46
60
  - !ruby/object:Gem::Version
47
61
  version: '3.0'
48
62
  type: :runtime
49
63
  prerelease: false
50
64
  version_requirements: !ruby/object:Gem::Requirement
51
65
  requirements:
52
- - - ~>
66
+ - - "~>"
53
67
  - !ruby/object:Gem::Version
54
68
  version: '3.0'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: mime-types
57
71
  requirement: !ruby/object:Gem::Requirement
58
72
  requirements:
59
- - - ~>
73
+ - - "~>"
60
74
  - !ruby/object:Gem::Version
61
75
  version: 1.25.1
62
76
  type: :runtime
63
77
  prerelease: false
64
78
  version_requirements: !ruby/object:Gem::Requirement
65
79
  requirements:
66
- - - ~>
80
+ - - "~>"
67
81
  - !ruby/object:Gem::Version
68
82
  version: 1.25.1
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: mime-types-data
71
85
  requirement: !ruby/object:Gem::Requirement
72
86
  requirements:
73
- - - ~>
87
+ - - "~>"
74
88
  - !ruby/object:Gem::Version
75
89
  version: '3.2016'
76
90
  type: :runtime
77
91
  prerelease: false
78
92
  version_requirements: !ruby/object:Gem::Requirement
79
93
  requirements:
80
- - - ~>
94
+ - - "~>"
81
95
  - !ruby/object:Gem::Version
82
96
  version: '3.2016'
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: multipart-post
85
99
  requirement: !ruby/object:Gem::Requirement
86
100
  requirements:
87
- - - ~>
101
+ - - "~>"
88
102
  - !ruby/object:Gem::Version
89
103
  version: 2.0.0
90
104
  type: :runtime
91
105
  prerelease: false
92
106
  version_requirements: !ruby/object:Gem::Requirement
93
107
  requirements:
94
- - - ~>
108
+ - - "~>"
95
109
  - !ruby/object:Gem::Version
96
110
  version: 2.0.0
97
111
  - !ruby/object:Gem::Dependency
98
112
  name: mustache
99
113
  requirement: !ruby/object:Gem::Requirement
100
114
  requirements:
101
- - - ~>
115
+ - - "~>"
102
116
  - !ruby/object:Gem::Version
103
117
  version: '1.0'
104
118
  type: :runtime
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
107
121
  requirements:
108
- - - ~>
122
+ - - "~>"
109
123
  - !ruby/object:Gem::Version
110
124
  version: '1.0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: octokit
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: '4.0'
132
+ type: :runtime
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '4.0'
111
139
  - !ruby/object:Gem::Dependency
112
140
  name: terminal-table
113
141
  requirement: !ruby/object:Gem::Requirement
114
142
  requirements:
115
- - - ~>
143
+ - - "~>"
116
144
  - !ruby/object:Gem::Version
117
145
  version: 1.4.5
118
146
  type: :runtime
119
147
  prerelease: false
120
148
  version_requirements: !ruby/object:Gem::Requirement
121
149
  requirements:
122
- - - ~>
150
+ - - "~>"
123
151
  - !ruby/object:Gem::Version
124
152
  version: 1.4.5
125
153
  - !ruby/object:Gem::Dependency
126
154
  name: vine
127
155
  requirement: !ruby/object:Gem::Requirement
128
156
  requirements:
129
- - - ~>
157
+ - - "~>"
130
158
  - !ruby/object:Gem::Version
131
159
  version: '0.2'
132
160
  type: :runtime
133
161
  prerelease: false
134
162
  version_requirements: !ruby/object:Gem::Requirement
135
163
  requirements:
136
- - - ~>
164
+ - - "~>"
137
165
  - !ruby/object:Gem::Version
138
166
  version: '0.2'
139
167
  - !ruby/object:Gem::Dependency
140
168
  name: zip
141
169
  requirement: !ruby/object:Gem::Requirement
142
170
  requirements:
143
- - - ~>
171
+ - - "~>"
144
172
  - !ruby/object:Gem::Version
145
173
  version: 2.0.0
146
174
  type: :runtime
147
175
  prerelease: false
148
176
  version_requirements: !ruby/object:Gem::Requirement
149
177
  requirements:
150
- - - ~>
178
+ - - "~>"
151
179
  - !ruby/object:Gem::Version
152
180
  version: 2.0.0
153
181
  - !ruby/object:Gem::Dependency
154
182
  name: bundler
155
183
  requirement: !ruby/object:Gem::Requirement
156
184
  requirements:
157
- - - ~>
185
+ - - ">="
158
186
  - !ruby/object:Gem::Version
159
- version: 1.12.0
187
+ version: '0'
160
188
  type: :development
161
189
  prerelease: false
162
190
  version_requirements: !ruby/object:Gem::Requirement
163
191
  requirements:
164
- - - ~>
192
+ - - ">="
165
193
  - !ruby/object:Gem::Version
166
- version: 1.12.0
194
+ version: '0'
167
195
  - !ruby/object:Gem::Dependency
168
196
  name: rspec
169
197
  requirement: !ruby/object:Gem::Requirement
170
198
  requirements:
171
- - - ~>
199
+ - - ">="
172
200
  - !ruby/object:Gem::Version
173
- version: '3.2'
201
+ version: '0'
174
202
  type: :development
175
203
  prerelease: false
176
204
  version_requirements: !ruby/object:Gem::Requirement
177
205
  requirements:
178
- - - ~>
206
+ - - ">="
179
207
  - !ruby/object:Gem::Version
180
- version: '3.2'
208
+ version: '0'
181
209
  - !ruby/object:Gem::Dependency
182
210
  name: rake
183
211
  requirement: !ruby/object:Gem::Requirement
184
212
  requirements:
185
- - - '>='
213
+ - - ">="
186
214
  - !ruby/object:Gem::Version
187
215
  version: '0'
188
216
  type: :development
189
217
  prerelease: false
190
218
  version_requirements: !ruby/object:Gem::Requirement
191
219
  requirements:
192
- - - '>='
220
+ - - ">="
193
221
  - !ruby/object:Gem::Version
194
222
  version: '0'
195
223
  description: |
@@ -208,7 +236,7 @@ executables:
208
236
  extensions: []
209
237
  extra_rdoc_files: []
210
238
  files:
211
- - .gitignore
239
+ - ".gitignore"
212
240
  - Gemfile
213
241
  - LICENSE
214
242
  - README.md
@@ -217,28 +245,26 @@ files:
217
245
  - bin/jm
218
246
  - jiraMule.gemspec
219
247
  - lib/JiraMule.rb
220
- - lib/JiraMule/Tempo.rb
248
+ - lib/JiraMule/StyleLoader.rb
249
+ - lib/JiraMule/commands.rb
221
250
  - lib/JiraMule/commands/assign.rb
222
- - lib/JiraMule/commands/githubImport.rb
251
+ - lib/JiraMule/commands/kanban.rb
223
252
  - lib/JiraMule/commands/link.rb
224
- - lib/JiraMule/commands/timesheet.rb
253
+ - lib/JiraMule/commands/open.rb
254
+ - lib/JiraMule/commands/query.rb
255
+ - lib/JiraMule/commands/statuses.rb
225
256
  - lib/JiraMule/gb.rb
257
+ - lib/JiraMule/jiraUtils.rb
258
+ - lib/JiraMule/renderMagic.rb
226
259
  - lib/jiraMule/Config.rb
227
260
  - lib/jiraMule/Passwords.rb
228
- - lib/jiraMule/commands.rb
229
261
  - lib/jiraMule/commands/attach.rb
230
262
  - lib/jiraMule/commands/config.rb
231
263
  - lib/jiraMule/commands/goto.rb
232
- - lib/jiraMule/commands/kanban.rb
233
264
  - lib/jiraMule/commands/logWork.rb
234
265
  - lib/jiraMule/commands/next.rb
235
- - lib/jiraMule/commands/progress.rb
236
- - lib/jiraMule/commands/query.rb
237
- - lib/jiraMule/commands/release.rb
238
- - lib/jiraMule/commands/testReady.rb
239
266
  - lib/jiraMule/gitUtils.rb
240
267
  - lib/jiraMule/http.rb
241
- - lib/jiraMule/jiraUtils.rb
242
268
  - lib/jiraMule/verbosing.rb
243
269
  - lib/jiraMule/version.rb
244
270
  homepage: ''
@@ -251,17 +277,17 @@ require_paths:
251
277
  - lib
252
278
  required_ruby_version: !ruby/object:Gem::Requirement
253
279
  requirements:
254
- - - '>='
280
+ - - ">="
255
281
  - !ruby/object:Gem::Version
256
282
  version: '0'
257
283
  required_rubygems_version: !ruby/object:Gem::Requirement
258
284
  requirements:
259
- - - '>='
285
+ - - ">="
260
286
  - !ruby/object:Gem::Version
261
287
  version: '0'
262
288
  requirements: []
263
289
  rubyforge_project:
264
- rubygems_version: 2.0.14.1
290
+ rubygems_version: 2.6.14.1
265
291
  signing_key:
266
292
  specification_version: 4
267
293
  summary: A collection of things that I do with jira
@@ -1,75 +0,0 @@
1
- require 'date'
2
- require 'json'
3
- require 'pp'
4
- require 'vine'
5
- require 'JiraMule/Config'
6
- require 'JiraMule/Passwords'
7
- require 'JiraMule/http'
8
- require 'JiraMule/verbosing'
9
-
10
- module JiraMule
11
- class Tempo
12
- include Verbose
13
- include Http
14
-
15
- def initialize()
16
- acc = Account.new
17
- up = acc.loginInfo
18
- @username = up[:email]
19
- @password = up[:password]
20
- end
21
- attr_reader :username, :password
22
-
23
- def endPoint(path='')
24
- URI($cfg['net.url'] + '/rest/tempo-timesheets/3/' + path.to_s)
25
- end
26
-
27
- # Get worklogs from Tempo plugin
28
- def workLogs(username=@username, dateFrom=nil, dateTo=nil, project=nil)
29
- q = {:username => username}
30
- q[:dateFrom] = DateTime.parse(dateFrom).to_date.iso8601 unless dateFrom.nil?
31
- q[:dateTo] = DateTime.parse(dateTo).to_date.iso8601 unless dateTo.nil?
32
- q[:projectKey] = project unless project.nil?
33
- #q[:accountKey]
34
- #q[:teamId]
35
-
36
- verbose "Fetching worklogs for #{q}"
37
- get('worklogs', q)
38
- end
39
-
40
- ## Submit a timesheet for approval.
41
- def submitForApproval(period=nil, name=@username, comment='')
42
- if period.nil? then
43
- # First day of work week
44
- cur = currentApprovalStatus(nil, name)
45
- period = cur.access 'period.dateFrom'
46
- end
47
- verbose "Submitting timesheet for #{period}"
48
- post('timesheet-approval/', {
49
- :user=>{
50
- :name=>name,
51
- },
52
- :period=>{
53
- :dateFrom=>period,
54
- },
55
- :action=>{
56
- :name=>:submit,
57
- :comment=>comment,
58
- }
59
- }) unless $cfg['tool.dry']
60
- end
61
-
62
- def currentApprovalStatus(period=nil, name=@username)
63
- verbose "Getting current approval status; #{period} #{name}"
64
- q = {
65
- :username => name,
66
- }
67
- q[:periodStartDate] = period unless period.nil?
68
-
69
- get('timesheet-approval/current/', q)
70
- end
71
- end
72
-
73
- end
74
-
75
- # vim: set ai et sw=2 ts=2 :