jira_dependency_visualizer 0.1.0 → 0.2.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: cd184318e4e1123ce0623671d1bf5fa5e1d3f15d
4
- data.tar.gz: ae6a5e18503bbf86e8205ef5e00639eaf5502b00
3
+ metadata.gz: 8f8380e3f053f673e1eb3b129c160850dac62e2b
4
+ data.tar.gz: ae88428f1fdfe1f2be851a793ceb7c2d6eafcf30
5
5
  SHA512:
6
- metadata.gz: 1f12ce3b3a0dcb251973172e276d51276d92f694c4e4af96bc0288aac4bdf2a8574669cb9260793ed99eea2f1f2bbc3035d4c56383c25b475ebf001eb5aa366e
7
- data.tar.gz: 14bbfa4f6fefbbe79327dd7304a666be0510d46cc9f8a18b7a7da4f19c0ddc00a2b06256fcb5ec030f9ccc1a4ce9d73a347a56655e47a3092e5cec24071e3880
6
+ metadata.gz: 790ab5ac712997c7967cdcd1b8ad6188f2ab2a275e5a21e13f506be1c85f143843c9d3759b52f76739f0df174a3dc65c043a823fe5eb30022947d372f2d1387f
7
+ data.tar.gz: 90d9d21011540bc540b4ebb9d2863e4a0e42a1c1b9295fcefdb121081fb9a40b53f754ecbc7b6657b763f4525a5e57d007a72a0cce8f015ef7facea0db32bc84
data/CHANGELOG.md ADDED
@@ -0,0 +1,19 @@
1
+ # Change Log
2
+ All notable changes to this project will be documented in this file.
3
+ This project adheres to [Semantic Versioning](http://semver.org/).
4
+
5
+ ## [Unreleased]
6
+
7
+ ## [0.2.0] - 2017-12-27
8
+ ### Added
9
+ - Changelog (this file)
10
+
11
+ ### Changed
12
+ - Switch from trollop to optparse
13
+ - Addressed security vulnerabilities
14
+ - rubocop [CVE-2017-8418](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8418)
15
+ - yard [CVE-2017-17042](https://nvd.nist.gov/vuln/detail/CVE-2017-17042)
16
+
17
+ ## [0.1.0] - 2016-03-09
18
+ ### Added
19
+ - Initial release
data/Gemfile.lock CHANGED
@@ -2,113 +2,86 @@ PATH
2
2
  remote: .
3
3
  specs:
4
4
  jira_dependency_visualizer (0.1.0)
5
- jira-ruby (~> 0.1)
5
+ jira-ruby (~> 1.0)
6
6
  ruby-graphviz (~> 1.2)
7
- trollop (~> 2.1)
8
7
 
9
8
  GEM
10
9
  remote: https://rubygems.org/
11
10
  specs:
12
- activesupport (4.2.6)
11
+ activesupport (5.1.4)
12
+ concurrent-ruby (~> 1.0, >= 1.0.2)
13
13
  i18n (~> 0.7)
14
- json (~> 1.7, >= 1.7.7)
15
14
  minitest (~> 5.1)
16
- thread_safe (~> 0.3, >= 0.3.4)
17
15
  tzinfo (~> 1.1)
18
- ast (2.2.0)
19
- coderay (1.1.1)
20
- coveralls (0.8.13)
21
- json (~> 1.8)
22
- simplecov (~> 0.11.0)
16
+ ast (2.3.0)
17
+ coderay (1.1.2)
18
+ concurrent-ruby (1.0.5)
19
+ coveralls (0.8.21)
20
+ json (>= 1.8, < 3)
21
+ simplecov (~> 0.14.1)
23
22
  term-ansicolor (~> 1.3)
24
- thor (~> 0.19.1)
25
- tins (~> 1.6.0)
26
- diff-lcs (1.2.5)
23
+ thor (~> 0.19.4)
24
+ tins (~> 1.6)
25
+ diff-lcs (1.3)
27
26
  docile (1.1.5)
28
- factory_girl (4.5.0)
27
+ factory_girl (4.9.0)
29
28
  activesupport (>= 3.0.0)
30
- ffi (1.9.10)
31
- formatador (0.2.5)
32
- guard (2.13.0)
33
- formatador (>= 0.2.4)
34
- listen (>= 2.7, <= 4.0)
35
- lumberjack (~> 1.0)
36
- nenv (~> 0.1)
37
- notiffany (~> 0.0)
38
- pry (>= 0.9.12)
39
- shellany (~> 0.0)
40
- thor (>= 0.18.1)
41
- guard-compat (1.2.1)
42
- guard-rspec (4.6.4)
43
- guard (~> 2.1)
44
- guard-compat (~> 1.1)
45
- rspec (>= 2.99.0, < 4.0)
46
- i18n (0.7.0)
47
- jira-ruby (0.1.17)
29
+ i18n (0.9.1)
30
+ concurrent-ruby (~> 1.0)
31
+ jira-ruby (1.4.3)
48
32
  activesupport
49
- oauth (~> 0.4.7)
50
- json (1.8.3)
51
- listen (3.0.6)
52
- rb-fsevent (>= 0.9.3)
53
- rb-inotify (>= 0.9.7)
54
- lumberjack (1.0.10)
55
- method_source (0.8.2)
56
- minitest (5.8.4)
57
- nenv (0.3.0)
58
- notiffany (0.0.8)
59
- nenv (~> 0.1)
60
- shellany (~> 0.0)
61
- oauth (0.4.7)
62
- parser (2.3.0.6)
63
- ast (~> 2.2)
33
+ multipart-post
34
+ oauth (~> 0.5, >= 0.5.0)
35
+ json (2.1.0)
36
+ method_source (0.9.0)
37
+ minitest (5.10.3)
38
+ multipart-post (2.0.0)
39
+ oauth (0.5.4)
40
+ parallel (1.12.1)
41
+ parser (2.4.0.2)
42
+ ast (~> 2.3)
64
43
  powerpack (0.1.1)
65
- pry (0.10.3)
44
+ pry (0.11.3)
66
45
  coderay (~> 1.1.0)
67
- method_source (~> 0.8.1)
68
- slop (~> 3.4)
69
- rainbow (2.1.0)
46
+ method_source (~> 0.9.0)
47
+ rainbow (3.0.0)
70
48
  rake (10.5.0)
71
- rb-fsevent (0.9.7)
72
- rb-inotify (0.9.7)
73
- ffi (>= 0.5.0)
74
- rspec (3.4.0)
75
- rspec-core (~> 3.4.0)
76
- rspec-expectations (~> 3.4.0)
77
- rspec-mocks (~> 3.4.0)
78
- rspec-core (3.4.4)
79
- rspec-support (~> 3.4.0)
80
- rspec-expectations (3.4.0)
49
+ rspec (3.7.0)
50
+ rspec-core (~> 3.7.0)
51
+ rspec-expectations (~> 3.7.0)
52
+ rspec-mocks (~> 3.7.0)
53
+ rspec-core (3.7.0)
54
+ rspec-support (~> 3.7.0)
55
+ rspec-expectations (3.7.0)
81
56
  diff-lcs (>= 1.2.0, < 2.0)
82
- rspec-support (~> 3.4.0)
83
- rspec-mocks (3.4.1)
57
+ rspec-support (~> 3.7.0)
58
+ rspec-mocks (3.7.0)
84
59
  diff-lcs (>= 1.2.0, < 2.0)
85
- rspec-support (~> 3.4.0)
86
- rspec-support (3.4.1)
87
- rubocop (0.37.2)
88
- parser (>= 2.3.0.4, < 3.0)
60
+ rspec-support (~> 3.7.0)
61
+ rspec-support (3.7.0)
62
+ rubocop (0.52.1)
63
+ parallel (~> 1.10)
64
+ parser (>= 2.4.0.2, < 3.0)
89
65
  powerpack (~> 0.1)
90
- rainbow (>= 1.99.1, < 3.0)
66
+ rainbow (>= 2.2.2, < 4.0)
91
67
  ruby-progressbar (~> 1.7)
92
- unicode-display_width (~> 0.3)
93
- ruby-graphviz (1.2.2)
94
- ruby-progressbar (1.7.5)
95
- shellany (0.0.1)
96
- simplecov (0.11.2)
68
+ unicode-display_width (~> 1.0, >= 1.0.1)
69
+ ruby-graphviz (1.2.3)
70
+ ruby-progressbar (1.9.0)
71
+ simplecov (0.14.1)
97
72
  docile (~> 1.1.0)
98
- json (~> 1.8)
73
+ json (>= 1.8, < 3)
99
74
  simplecov-html (~> 0.10.0)
100
- simplecov-html (0.10.0)
101
- slop (3.6.0)
102
- term-ansicolor (1.3.2)
75
+ simplecov-html (0.10.2)
76
+ term-ansicolor (1.6.0)
103
77
  tins (~> 1.0)
104
- thor (0.19.1)
105
- thread_safe (0.3.5)
106
- tins (1.6.0)
107
- trollop (2.1.2)
108
- tzinfo (1.2.2)
78
+ thor (0.19.4)
79
+ thread_safe (0.3.6)
80
+ tins (1.16.3)
81
+ tzinfo (1.2.4)
109
82
  thread_safe (~> 0.1)
110
- unicode-display_width (0.3.1)
111
- yard (0.8.7.6)
83
+ unicode-display_width (1.3.0)
84
+ yard (0.9.12)
112
85
 
113
86
  PLATFORMS
114
87
  ruby
@@ -117,13 +90,12 @@ DEPENDENCIES
117
90
  bundler (~> 1.11)
118
91
  coveralls (~> 0.8)
119
92
  factory_girl (~> 4.5)
120
- guard-rspec (~> 4.6)
121
93
  jira_dependency_visualizer!
122
94
  pry (~> 0.10)
123
95
  rake (~> 10.5)
124
96
  rspec (~> 3.4)
125
- rubocop (~> 0.37)
126
- yard (~> 0.8)
97
+ rubocop (~> 0.52)
98
+ yard (~> 0.9)
127
99
 
128
100
  BUNDLED WITH
129
- 1.11.2
101
+ 1.16.1
data/README.md CHANGED
@@ -1,4 +1,6 @@
1
1
  [![Build Status](https://travis-ci.org/thejandroman/jira_dependency_visualizer.svg?branch=master)](https://travis-ci.org/thejandroman/jira_dependency_visualizer)
2
+ [![Coverage Status](https://coveralls.io/repos/github/thejandroman/jira_dependency_visualizer/badge.svg?branch=master)](https://coveralls.io/github/thejandroman/jira_dependency_visualizer?branch=master)
3
+ [![Inline docs](http://inch-ci.org/github/thejandroman/jira_dependency_visualizer.svg?branch=master)](http://inch-ci.org/github/thejandroman/jira_dependency_visualizer)
2
4
 
3
5
  # JiraDependencyVisualizer
4
6
 
@@ -1,11 +1,11 @@
1
1
  #!/usr/bin/env ruby
2
2
  require 'jira_dependency_visualizer'
3
3
  require 'yaml'
4
- require 'trollop'
4
+ require 'optparse'
5
5
 
6
- opts = Trollop.options do
7
- version JiraDependencyVisualizer::VERSION
8
- banner <<-EOS
6
+ opts = {}
7
+ parser = OptionParser.new do |opt|
8
+ opt.banner = <<-EOS
9
9
  Takes a Jira ticket and builds a dependency graph based on that
10
10
  ticket's dependent tickets.
11
11
 
@@ -14,83 +14,107 @@ Usage:
14
14
  where [options] are:
15
15
  EOS
16
16
 
17
- opt :color_config,
18
- 'YAML file specifying the colors to use in the graph',
19
- type: :string
20
-
21
- opt :context_path,
22
- 'The Jira application\'s context path',
23
- type: :string,
24
- short: 'c',
25
- default: ''
26
-
27
- opt :exclude_link,
28
- 'Jira issue link to exclude; can be specified multiple times',
29
- type: :string,
30
- short: 'e',
31
- multi: true
32
-
33
- opt :graph_format,
34
- 'The format to write the dependency graph in',
35
- type: :string,
36
- short: 'f',
37
- default: 'svg'
38
-
39
- opt :graph_filename,
40
- 'The filename to write the dependency graph to',
41
- type: :string,
42
- short: 'g',
43
- default: './issue_graph.svg'
44
-
45
- opt :issue_id,
46
- 'The issue ID visualize',
47
- type: :string,
48
- short: 'i',
49
- required: true
50
-
51
- opt :password,
52
- '[REQUIRED] The Jira user\'s password',
53
- type: :string,
54
- short: 'p',
55
- required: true
56
-
57
- opt :proxy_address,
58
- 'The proxy address',
59
- type: :string
60
-
61
- opt :proxy_port,
62
- 'The proxy port',
63
- type: :int
64
-
65
- opt :read_timeout,
66
- 'Number of seconds to wait for data to be read',
67
- type: :int,
68
- short: 't'
69
-
70
- opt :rest_base_path,
71
- 'The Jira rest API base path',
72
- type: :string,
73
- short: 'r',
74
- default: '/rest/api/latest'
75
-
76
- opt :site,
77
- '[REQUIRED] URL for Jira',
78
- type: :string,
79
- short: 's',
80
- required: true
81
-
82
- opt :use_ssl,
83
- 'Whether to use SSL',
84
- type: :flag,
85
- default: true
86
-
87
- opt :username,
88
- '[REQUIRED] The Jira user\'s username',
89
- type: :string,
90
- short: 'u',
91
- required: true
17
+ opt.on '-v', '--version', 'Print version and exit' do
18
+ puts JiraDependencyVisualizer::VERSION
19
+ exit
20
+ end
21
+
22
+ opt.on '-h', '--help', 'Show this message' do
23
+ puts opt
24
+ exit
25
+ end
26
+
27
+ opt.on '-o o', '--color-config FILE', String,
28
+ 'YAML file specifying the colors to use in the graph' do |o|
29
+ opts[:color_config] = o
30
+ end
31
+
32
+ opts[:context_path] = ''
33
+ opt.on '-c c', '--context-path CONTEXT', String,
34
+ 'The Jira application\'s context path (default: \'\')' do |c|
35
+ opts[:context_path] = c
36
+ end
37
+
38
+ opts[:exclude_link] = []
39
+ opt.on '-e e', '--exclude-link LINK1,LINK2', Array,
40
+ 'Jira issue link(s) to exclude; comma separated' do |e|
41
+ opts[:exclude_link] = e
42
+ end
43
+
44
+ opts[:graph_format] = 'svg'
45
+ opt.on '-f f', '--graph-format FORMAT', String,
46
+ 'The format to write the dependency graph in (default: svg)' do |f|
47
+ opts[:graph_format] = f
48
+ end
49
+
50
+ opts[:graph_filename] = './issue_graph.svg'
51
+ opt.on '-g g', '--graph-filename FILENAME', String,
52
+ 'The filename to write the dependency graph to. Appends the ' \
53
+ ':graph_format option to the end' do |g|
54
+ opts[:graph_filename] = g
55
+ end
56
+
57
+ opt.on '-i i', '--issue-id ISSUE', String,
58
+ '[REQUIRED] The issue ID to visualize' do |i|
59
+ opts[:issue_id] = i
60
+ end
61
+
62
+ opt.on '-p p', '--password PASSWORD', String,
63
+ '[REQUIRED] The Jira user\'s password' do |p|
64
+ opts[:password] = p
65
+ end
66
+
67
+ opt.on '-x x', '--proxy-address ADDRESS', String,
68
+ 'The proxy address' do |x|
69
+ opts[:proxy_address] = x
70
+ end
71
+
72
+ opt.on '-t t', '--read-timeout TIMEOUT', Integer,
73
+ 'Number of seconds to wait for data to be read' do |t|
74
+ opts[:read_timeout] = t
75
+ end
76
+
77
+ opt.on '-s s', '--site SITE', String,
78
+ '[REQUIRED] URL for Jira' do |s|
79
+ opts[:site] = s
80
+ end
81
+
82
+ opt.on '-u u', '--username USER', String,
83
+ '[REQUIRED] The Jira user\'s username' do |u|
84
+ opts[:username] = u
85
+ end
86
+
87
+ opt.on '-y y', '--proxy-port PORT', Integer,
88
+ 'The proxy port' do |y|
89
+ opts[:proxy_port] = y
90
+ end
91
+
92
+ opts[:rest_base_path] = '/rest/api/latest'
93
+ opt.on '-r r', '--rest-base-path PATH', String,
94
+ 'The Jira rest API base path (default: /rest/api/latest)' do |r|
95
+ opts[:rest_base_path] = r
96
+ end
97
+
98
+ opts[:use_ssl] = true
99
+ opt.on('-l', '--[no-]use-ssl', TrueClass,
100
+ 'Whether to use SSL (default: true)') do |l|
101
+ opts[:use_ssl] = l
102
+ end
92
103
  end
93
104
 
105
+ begin
106
+ parser.parse!
107
+ rescue OptionParser::InvalidOption => e
108
+ abort e.to_s.sub(/^(.)/, &:capitalize)
109
+ rescue OptionParser::MissingArgument => e
110
+ abort e.to_s.sub(/^(.)/, &:capitalize)
111
+ end
112
+
113
+ abort '--issue-id is required.' if opts[:issue_id].nil?
114
+ abort '--site is required.' if opts[:site].nil?
115
+ abort '--password is required.' if opts[:password].nil?
116
+ abort '--username is required.' if opts[:username].nil?
117
+
94
118
  puts 'Building options...'
95
119
  opts[:auth_type] = :basic
96
120
 
@@ -1,4 +1,4 @@
1
- require 'jira'
1
+ require 'jira-ruby'
2
2
 
3
3
  module JiraDependencyVisualizer
4
4
  # Creates a Jira client and exposes functions to get Jira issues
@@ -1,4 +1,4 @@
1
1
  module JiraDependencyVisualizer
2
2
  # Current version
3
- VERSION = '0.1.0'.freeze
3
+ VERSION = '0.2.0'.freeze
4
4
  end
@@ -18,7 +18,8 @@ FactoryGirl.define do
18
18
 
19
19
  factory :generic_issue, class: OpenStruct do
20
20
  attrs do
21
- { 'key' => 'test5',
21
+ {
22
+ 'key' => 'test5',
22
23
  'fields' => {
23
24
  'status' => {
24
25
  'name' => 'Blocked'
@@ -25,14 +25,17 @@ describe JiraDependencyVisualizer::Graph do
25
25
  end
26
26
 
27
27
  let(:colors) do
28
- { 'status' =>
29
- { 'Incoming' =>
30
- { 'fillcolor' => 'purple',
31
- 'style' => 'filled' },
32
- 'To Do' =>
33
- { 'fillcolor' => 'purple',
28
+ {
29
+ 'status' => {
30
+ 'Incoming' => {
31
+ 'fillcolor' => 'purple',
32
+ 'style' => 'filled'
33
+ },
34
+ 'To Do' => {
35
+ 'fillcolor' => 'purple',
34
36
  'style' => 'filled',
35
- 'fontcolor' => 'white' }
37
+ 'fontcolor' => 'white'
38
+ }
36
39
  }
37
40
  }
38
41
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jira_dependency_visualizer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alejandro Figueroa
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-03-09 00:00:00.000000000 Z
11
+ date: 2017-12-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jira-ruby
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.1'
19
+ version: '1.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0.1'
26
+ version: '1.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: ruby-graphviz
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -38,20 +38,6 @@ dependencies:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '1.2'
41
- - !ruby/object:Gem::Dependency
42
- name: trollop
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - "~>"
46
- - !ruby/object:Gem::Version
47
- version: '2.1'
48
- type: :runtime
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - "~>"
53
- - !ruby/object:Gem::Version
54
- version: '2.1'
55
41
  - !ruby/object:Gem::Dependency
56
42
  name: bundler
57
43
  requirement: !ruby/object:Gem::Requirement
@@ -94,20 +80,6 @@ dependencies:
94
80
  - - "~>"
95
81
  - !ruby/object:Gem::Version
96
82
  version: '4.5'
97
- - !ruby/object:Gem::Dependency
98
- name: guard-rspec
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - "~>"
102
- - !ruby/object:Gem::Version
103
- version: '4.6'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - "~>"
109
- - !ruby/object:Gem::Version
110
- version: '4.6'
111
83
  - !ruby/object:Gem::Dependency
112
84
  name: pry
113
85
  requirement: !ruby/object:Gem::Requirement
@@ -156,28 +128,28 @@ dependencies:
156
128
  requirements:
157
129
  - - "~>"
158
130
  - !ruby/object:Gem::Version
159
- version: '0.37'
131
+ version: '0.52'
160
132
  type: :development
161
133
  prerelease: false
162
134
  version_requirements: !ruby/object:Gem::Requirement
163
135
  requirements:
164
136
  - - "~>"
165
137
  - !ruby/object:Gem::Version
166
- version: '0.37'
138
+ version: '0.52'
167
139
  - !ruby/object:Gem::Dependency
168
140
  name: yard
169
141
  requirement: !ruby/object:Gem::Requirement
170
142
  requirements:
171
143
  - - "~>"
172
144
  - !ruby/object:Gem::Version
173
- version: '0.8'
145
+ version: '0.9'
174
146
  type: :development
175
147
  prerelease: false
176
148
  version_requirements: !ruby/object:Gem::Requirement
177
149
  requirements:
178
150
  - - "~>"
179
151
  - !ruby/object:Gem::Version
180
- version: '0.8'
152
+ version: '0.9'
181
153
  description: Creates a graphviz file from a JIRA ticket's dependencies
182
154
  email:
183
155
  - alejandro@ideasftw.com
@@ -186,16 +158,14 @@ executables:
186
158
  extensions: []
187
159
  extra_rdoc_files: []
188
160
  files:
161
+ - CHANGELOG.md
189
162
  - CODE_OF_CONDUCT.md
190
163
  - Gemfile
191
164
  - Gemfile.lock
192
- - Guardfile
193
165
  - LICENSE.txt
194
166
  - README.md
195
167
  - Rakefile
196
168
  - bin/jira_dependency_visualizer
197
- - issue_graph.svg
198
- - jira_dependency_visualizer.gemspec
199
169
  - lib/jira_dependency_visualizer.rb
200
170
  - lib/jira_dependency_visualizer/graph.rb
201
171
  - lib/jira_dependency_visualizer/jira.rb
@@ -229,9 +199,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
229
199
  version: '0'
230
200
  requirements: []
231
201
  rubyforge_project:
232
- rubygems_version: 2.4.8
202
+ rubygems_version: 2.5.1
233
203
  signing_key:
234
204
  specification_version: 4
235
205
  summary: Creates a graphviz file from a JIRA ticket's dependencies
236
206
  test_files: []
237
- has_rdoc:
data/Guardfile DELETED
@@ -1,11 +0,0 @@
1
- guard :rspec, cmd: 'bundle exec rspec' do
2
- # watch /lib/ files
3
- watch(%r{^lib/(.+).rb$}) do |m|
4
- "spec/#{m[1]}_spec.rb"
5
- end
6
-
7
- # watch /spec/ files
8
- watch(%r{^spec/(.+).rb$}) do |m|
9
- "spec/#{m[1]}.rb"
10
- end
11
- end
data/issue_graph.svg DELETED
@@ -1,339 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
- <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
3
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
- <!-- Generated by graphviz version 2.38.0 (20140413.2041)
5
- -->
6
- <!-- Title: INF&#45;1855 Pages: 1 -->
7
- <svg width="1760pt" height="461pt"
8
- viewBox="0.00 0.00 1759.98 461.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
9
- <g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 457)">
10
- <title>INF&#45;1855</title>
11
- <polygon fill="white" stroke="none" points="-4,4 -4,-457 1755.98,-457 1755.98,4 -4,4"/>
12
- <!-- INF&#45;1855 -->
13
- <g id="node1" class="node"><title>INF&#45;1855</title>
14
- <ellipse fill="none" stroke="black" cx="1019.99" cy="-435" rx="44.9768" ry="18"/>
15
- <text text-anchor="middle" x="1019.99" y="-430.8" font-family="Times,serif" font-size="14.00">INF&#45;1855</text>
16
- </g>
17
- <!-- INF&#45;1971 -->
18
- <g id="node2" class="node"><title>INF&#45;1971</title>
19
- <g id="a_node2"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1971" xlink:title="Logsync user for pushing TDN logs">
20
- <ellipse fill="green" stroke="black" cx="44.9884" cy="-362" rx="44.9768" ry="18"/>
21
- <text text-anchor="middle" x="44.9884" y="-357.8" font-family="Times,serif" font-size="14.00" fill="white">INF&#45;1971</text>
22
- </a>
23
- </g>
24
- </g>
25
- <!-- INF&#45;1855&#45;&gt;INF&#45;1971 -->
26
- <g id="edge1" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1971</title>
27
- <path fill="none" stroke="orange" d="M975.195,-432.338C863.929,-428.085 566.04,-415.938 317.988,-399 220.516,-392.344 194.821,-399.004 98.9884,-380 95.1396,-379.237 91.178,-378.298 87.2323,-377.257"/>
28
- <polygon fill="orange" stroke="orange" points="88.1066,-373.867 77.5307,-374.502 86.1939,-380.601 88.1066,-373.867"/>
29
- </g>
30
- <!-- INF&#45;1970 -->
31
- <g id="node3" class="node"><title>INF&#45;1970</title>
32
- <g id="a_node3"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1970" xlink:title="Tagsync AWS user in aws&#45;china for instance scanning">
33
- <ellipse fill="lightgrey" stroke="black" cx="152.988" cy="-362" rx="44.9768" ry="18"/>
34
- <text text-anchor="middle" x="152.988" y="-357.8" font-family="Times,serif" font-size="14.00">INF&#45;1970</text>
35
- </a>
36
- </g>
37
- </g>
38
- <!-- INF&#45;1855&#45;&gt;INF&#45;1970 -->
39
- <g id="edge2" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1970</title>
40
- <path fill="none" stroke="orange" d="M974.566,-434.754C850.425,-436.007 495.467,-434.182 206.988,-380 203.132,-379.276 199.165,-378.364 195.216,-377.341"/>
41
- <polygon fill="orange" stroke="orange" points="196.084,-373.949 185.51,-374.611 194.189,-380.688 196.084,-373.949"/>
42
- </g>
43
- <!-- INF&#45;1969 -->
44
- <g id="node4" class="node"><title>INF&#45;1969</title>
45
- <g id="a_node4"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1969" xlink:title="Tagsync to support different provider settings per taget">
46
- <ellipse fill="green" stroke="black" cx="260.988" cy="-362" rx="44.9768" ry="18"/>
47
- <text text-anchor="middle" x="260.988" y="-357.8" font-family="Times,serif" font-size="14.00" fill="white">INF&#45;1969</text>
48
- </a>
49
- </g>
50
- </g>
51
- <!-- INF&#45;1855&#45;&gt;INF&#45;1969 -->
52
- <g id="edge3" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1969</title>
53
- <path fill="none" stroke="orange" d="M975.997,-431.225C889.158,-425.677 689.582,-412.579 521.988,-399 429.903,-391.539 405.565,-398.197 314.988,-380 311.142,-379.227 307.181,-378.282 303.236,-377.237"/>
54
- <polygon fill="orange" stroke="orange" points="304.112,-373.847 293.536,-374.475 302.195,-380.58 304.112,-373.847"/>
55
- </g>
56
- <!-- INF&#45;1968 -->
57
- <g id="node5" class="node"><title>INF&#45;1968</title>
58
- <g id="a_node5"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1968" xlink:title="New AWS SSH key for root user">
59
- <ellipse fill="green" stroke="black" cx="368.988" cy="-362" rx="44.9768" ry="18"/>
60
- <text text-anchor="middle" x="368.988" y="-357.8" font-family="Times,serif" font-size="14.00" fill="white">INF&#45;1968</text>
61
- </a>
62
- </g>
63
- </g>
64
- <!-- INF&#45;1855&#45;&gt;INF&#45;1968 -->
65
- <g id="edge4" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1968</title>
66
- <path fill="none" stroke="orange" d="M975.34,-432.34C889.166,-428.797 694.02,-419.121 530.988,-399 482.618,-393.03 470.334,-391.565 422.988,-380 419.387,-379.12 415.675,-378.131 411.962,-377.083"/>
67
- <polygon fill="orange" stroke="orange" points="412.792,-373.679 402.211,-374.208 410.813,-380.393 412.792,-373.679"/>
68
- </g>
69
- <!-- INF&#45;1967 -->
70
- <g id="node6" class="node"><title>INF&#45;1967</title>
71
- <g id="a_node6"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1967" xlink:title="Nginx server_name setting difference for aws&#45;china/domain">
72
- <ellipse fill="purple" stroke="black" cx="518.988" cy="-276" rx="44.9768" ry="18"/>
73
- <text text-anchor="middle" x="518.988" y="-271.8" font-family="Times,serif" font-size="14.00" fill="white">INF&#45;1967</text>
74
- </a>
75
- </g>
76
- </g>
77
- <!-- INF&#45;1855&#45;&gt;INF&#45;1967 -->
78
- <g id="edge5" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1967</title>
79
- <path fill="none" stroke="orange" d="M975.043,-433.958C874.151,-433.032 633.452,-425.931 568.988,-380 568.988,-380 546.563,-333.804 531.749,-303.287"/>
80
- <polygon fill="orange" stroke="orange" points="534.761,-301.476 527.245,-294.008 528.463,-304.533 534.761,-301.476"/>
81
- </g>
82
- <!-- INF&#45;1966 -->
83
- <g id="node7" class="node"><title>INF&#45;1966</title>
84
- <g id="a_node7"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1966" xlink:title="Different GPG keys/password for TDN files backup from manage">
85
- <ellipse fill="green" stroke="black" cx="622.988" cy="-362" rx="44.9768" ry="18"/>
86
- <text text-anchor="middle" x="622.988" y="-357.8" font-family="Times,serif" font-size="14.00" fill="white">INF&#45;1966</text>
87
- </a>
88
- </g>
89
- </g>
90
- <!-- INF&#45;1855&#45;&gt;INF&#45;1966 -->
91
- <g id="edge6" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1966</title>
92
- <path fill="none" stroke="orange" d="M977.082,-429.326C911.749,-421.743 783.652,-405.039 676.988,-380 673.379,-379.153 669.661,-378.186 665.945,-377.154"/>
93
- <polygon fill="orange" stroke="orange" points="666.768,-373.748 656.188,-374.304 664.806,-380.467 666.768,-373.748"/>
94
- </g>
95
- <!-- INF&#45;1965 -->
96
- <g id="node8" class="node"><title>INF&#45;1965</title>
97
- <g id="a_node8"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1965" xlink:title="AWS bucket to pull initial TDN files from in China">
98
- <ellipse fill="lightgrey" stroke="black" cx="730.988" cy="-362" rx="44.9768" ry="18"/>
99
- <text text-anchor="middle" x="730.988" y="-357.8" font-family="Times,serif" font-size="14.00">INF&#45;1965</text>
100
- </a>
101
- </g>
102
- </g>
103
- <!-- INF&#45;1855&#45;&gt;INF&#45;1965 -->
104
- <g id="edge7" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1965</title>
105
- <path fill="none" stroke="orange" d="M980.667,-425.959C933.805,-416.148 853.257,-398.558 784.988,-380 781.461,-379.041 777.82,-378.002 774.171,-376.927"/>
106
- <polygon fill="orange" stroke="orange" points="775.155,-373.568 764.57,-374.024 773.129,-380.268 775.155,-373.568"/>
107
- </g>
108
- <!-- INF&#45;1964 -->
109
- <g id="node9" class="node"><title>INF&#45;1964</title>
110
- <g id="a_node9"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1964" xlink:title="Monitoring for TDN Nodes in China">
111
- <ellipse fill="purple" stroke="black" cx="838.988" cy="-362" rx="44.9768" ry="18"/>
112
- <text text-anchor="middle" x="838.988" y="-357.8" font-family="Times,serif" font-size="14.00" fill="white">INF&#45;1964</text>
113
- </a>
114
- </g>
115
- </g>
116
- <!-- INF&#45;1855&#45;&gt;INF&#45;1964 -->
117
- <g id="edge8" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1964</title>
118
- <path fill="none" stroke="orange" d="M988.873,-421.795C958.607,-409.922 912.476,-391.827 879.389,-378.848"/>
119
- <polygon fill="orange" stroke="orange" points="880.587,-375.558 870,-375.165 878.031,-382.075 880.587,-375.558"/>
120
- </g>
121
- <!-- INF&#45;1963 -->
122
- <g id="node10" class="node"><title>INF&#45;1963</title>
123
- <g id="a_node10"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1963" xlink:title="Special subnet for TDN autoscaling nodes">
124
- <ellipse fill="green" stroke="black" cx="946.988" cy="-362" rx="44.9768" ry="18"/>
125
- <text text-anchor="middle" x="946.988" y="-357.8" font-family="Times,serif" font-size="14.00" fill="white">INF&#45;1963</text>
126
- </a>
127
- </g>
128
- </g>
129
- <!-- INF&#45;1855&#45;&gt;INF&#45;1963 -->
130
- <g id="edge9" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1963</title>
131
- <path fill="none" stroke="orange" d="M1003.42,-417.889C993.742,-408.473 981.362,-396.432 970.665,-386.028"/>
132
- <polygon fill="orange" stroke="orange" points="972.845,-383.266 963.236,-378.803 967.965,-388.284 972.845,-383.266"/>
133
- </g>
134
- <!-- INF&#45;1962 -->
135
- <g id="node11" class="node"><title>INF&#45;1962</title>
136
- <g id="a_node11"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1962" xlink:title="ELBs to be created">
137
- <ellipse fill="green" stroke="black" cx="953.988" cy="-104" rx="44.9768" ry="18"/>
138
- <text text-anchor="middle" x="953.988" y="-99.8" font-family="Times,serif" font-size="14.00" fill="white">INF&#45;1962</text>
139
- </a>
140
- </g>
141
- </g>
142
- <!-- INF&#45;1855&#45;&gt;INF&#45;1962 -->
143
- <g id="edge10" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1962</title>
144
- <path fill="none" stroke="orange" d="M1016.53,-416.775C1005.73,-362.92 972.531,-197.429 959.407,-132.013"/>
145
- <polygon fill="orange" stroke="orange" points="962.808,-131.171 957.41,-122.055 955.945,-132.548 962.808,-131.171"/>
146
- </g>
147
- <!-- INF&#45;1961 -->
148
- <g id="node12" class="node"><title>INF&#45;1961</title>
149
- <g id="a_node12"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1961" xlink:title="Launch Configuration for Autoscaling Groups">
150
- <ellipse fill="green" stroke="black" cx="1142.99" cy="-18" rx="44.9768" ry="18"/>
151
- <text text-anchor="middle" x="1142.99" y="-13.8" font-family="Times,serif" font-size="14.00" fill="white">INF&#45;1961</text>
152
- </a>
153
- </g>
154
- </g>
155
- <!-- INF&#45;1855&#45;&gt;INF&#45;1961 -->
156
- <g id="edge11" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1961</title>
157
- <path fill="none" stroke="orange" d="M1064.64,-432.186C1133.41,-428.266 1259.77,-416.194 1282.99,-380 1353.62,-269.891 1368.7,-195.406 1296.99,-86 1274.58,-51.8208 1230.55,-34.984 1195.28,-26.7453"/>
158
- <polygon fill="orange" stroke="orange" points="1195.64,-23.2415 1185.13,-24.5484 1194.16,-30.0833 1195.64,-23.2415"/>
159
- </g>
160
- <!-- INF&#45;1960 -->
161
- <g id="node13" class="node"><title>INF&#45;1960</title>
162
- <g id="a_node13"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1960" xlink:title="Autoscaling Groups to be created">
163
- <ellipse fill="green" stroke="black" cx="1061.99" cy="-104" rx="44.9768" ry="18"/>
164
- <text text-anchor="middle" x="1061.99" y="-99.8" font-family="Times,serif" font-size="14.00" fill="white">INF&#45;1960</text>
165
- </a>
166
- </g>
167
- </g>
168
- <!-- INF&#45;1855&#45;&gt;INF&#45;1960 -->
169
- <g id="edge12" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1960</title>
170
- <path fill="none" stroke="orange" d="M1034.57,-417.801C1045.29,-404.189 1057.99,-383.692 1057.99,-363 1057.99,-363 1057.99,-363 1057.99,-189 1057.99,-169.957 1059.03,-148.514 1060.05,-132.059"/>
171
- <polygon fill="orange" stroke="orange" points="1063.54,-132.249 1060.7,-122.042 1056.56,-131.792 1063.54,-132.249"/>
172
- </g>
173
- <!-- INF&#45;1959 -->
174
- <g id="node14" class="node"><title>INF&#45;1959</title>
175
- <g id="a_node14"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1959" xlink:title="Testing Instance boot time for ELB grace period">
176
- <ellipse fill="purple" stroke="black" cx="1242.99" cy="-104" rx="44.9768" ry="18"/>
177
- <text text-anchor="middle" x="1242.99" y="-99.8" font-family="Times,serif" font-size="14.00" fill="white">INF&#45;1959</text>
178
- </a>
179
- </g>
180
- </g>
181
- <!-- INF&#45;1855&#45;&gt;INF&#45;1959 -->
182
- <g id="edge13" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1959</title>
183
- <path fill="none" stroke="orange" d="M1063.88,-430.677C1136.08,-423.989 1271.99,-405.726 1271.99,-363 1271.99,-363 1271.99,-363 1271.99,-189 1271.99,-168.813 1264.41,-147.318 1257.01,-131.126"/>
184
- <polygon fill="orange" stroke="orange" points="1259.99,-129.263 1252.48,-121.788 1253.69,-132.314 1259.99,-129.263"/>
185
- </g>
186
- <!-- INF&#45;1958 -->
187
- <g id="node15" class="node"><title>INF&#45;1958</title>
188
- <g id="a_node15"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1958" xlink:title="Transfer AMI to aws&#45;china">
189
- <ellipse fill="lightgrey" stroke="black" cx="1136.99" cy="-190" rx="44.9768" ry="18"/>
190
- <text text-anchor="middle" x="1136.99" y="-185.8" font-family="Times,serif" font-size="14.00">INF&#45;1958</text>
191
- </a>
192
- </g>
193
- </g>
194
- <!-- INF&#45;1855&#45;&gt;INF&#45;1958 -->
195
- <g id="edge14" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1958</title>
196
- <path fill="none" stroke="orange" d="M1047.17,-420.594C1056.16,-415.001 1065.51,-407.747 1071.99,-399 1110.97,-346.34 1095.21,-320.46 1114.99,-258 1119.2,-244.687 1124.03,-229.936 1128.09,-217.672"/>
197
- <polygon fill="orange" stroke="orange" points="1131.45,-218.635 1131.28,-208.041 1124.81,-216.43 1131.45,-218.635"/>
198
- </g>
199
- <!-- INF&#45;1957 -->
200
- <g id="node16" class="node"><title>INF&#45;1957</title>
201
- <g id="a_node16"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1957" xlink:title="Test AMI build by packer">
202
- <ellipse fill="lightgrey" stroke="black" cx="1168.99" cy="-276" rx="44.9768" ry="18"/>
203
- <text text-anchor="middle" x="1168.99" y="-271.8" font-family="Times,serif" font-size="14.00">INF&#45;1957</text>
204
- </a>
205
- </g>
206
- </g>
207
- <!-- INF&#45;1855&#45;&gt;INF&#45;1957 -->
208
- <g id="edge15" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1957</title>
209
- <path fill="none" stroke="orange" d="M1061.94,-428.347C1113.53,-420.436 1196.54,-404.254 1214.99,-380 1233.36,-355.853 1224.03,-338.35 1208.99,-312 1206.24,-307.192 1202.59,-302.715 1198.6,-298.678"/>
210
- <polygon fill="orange" stroke="orange" points="1200.93,-296.067 1191.19,-291.91 1196.21,-301.237 1200.93,-296.067"/>
211
- </g>
212
- <!-- INF&#45;1956 -->
213
- <g id="node17" class="node"><title>INF&#45;1956</title>
214
- <g id="a_node17"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1956" xlink:title="Manage DB to support &quot;allow_china&quot; for a space/client">
215
- <ellipse fill="purple" stroke="black" cx="1382.99" cy="-362" rx="44.9768" ry="18"/>
216
- <text text-anchor="middle" x="1382.99" y="-357.8" font-family="Times,serif" font-size="14.00" fill="white">INF&#45;1956</text>
217
- </a>
218
- </g>
219
- </g>
220
- <!-- INF&#45;1855&#45;&gt;INF&#45;1956 -->
221
- <g id="edge16" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1956</title>
222
- <path fill="none" stroke="orange" d="M1065.11,-434.789C1125.67,-434.519 1235.82,-429.323 1323.99,-399 1334.57,-395.363 1345.26,-389.601 1354.59,-383.745"/>
223
- <polygon fill="orange" stroke="orange" points="1356.63,-386.589 1363.06,-378.167 1352.78,-380.742 1356.63,-386.589"/>
224
- </g>
225
- <!-- INF&#45;1955 -->
226
- <g id="node18" class="node"><title>INF&#45;1955</title>
227
- <g id="a_node18"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1955" xlink:title="DNS domain decided on/purchased (route53, Ultra)">
228
- <ellipse fill="purple" stroke="black" cx="476.988" cy="-362" rx="44.9768" ry="18"/>
229
- <text text-anchor="middle" x="476.988" y="-357.8" font-family="Times,serif" font-size="14.00" fill="white">INF&#45;1955</text>
230
- </a>
231
- </g>
232
- </g>
233
- <!-- INF&#45;1855&#45;&gt;INF&#45;1955 -->
234
- <g id="edge17" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1955</title>
235
- <path fill="none" stroke="orange" d="M974.898,-433.444C870.892,-431.727 616.921,-424.927 535.988,-399 525.25,-395.56 514.446,-389.795 505.071,-383.875"/>
236
- <polygon fill="orange" stroke="orange" points="506.834,-380.845 496.569,-378.223 502.959,-386.674 506.834,-380.845"/>
237
- </g>
238
- <!-- INF&#45;1954 -->
239
- <g id="node19" class="node"><title>INF&#45;1954</title>
240
- <g id="a_node19"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1954" xlink:title="ICP license for 80/443 traffic">
241
- <ellipse fill="purple" stroke="black" cx="1490.99" cy="-362" rx="44.9768" ry="18"/>
242
- <text text-anchor="middle" x="1490.99" y="-357.8" font-family="Times,serif" font-size="14.00" fill="white">INF&#45;1954</text>
243
- </a>
244
- </g>
245
- </g>
246
- <!-- INF&#45;1855&#45;&gt;INF&#45;1954 -->
247
- <g id="edge18" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1954</title>
248
- <path fill="none" stroke="orange" d="M1064.47,-431.732C1141.42,-427.037 1303.95,-413.721 1436.99,-380 1440.53,-379.102 1444.18,-378.106 1447.84,-377.06"/>
249
- <polygon fill="orange" stroke="orange" points="1448.86,-380.407 1457.45,-374.205 1446.87,-373.697 1448.86,-380.407"/>
250
- </g>
251
- <!-- INF&#45;1556 -->
252
- <g id="node20" class="node"><title>INF&#45;1556</title>
253
- <g id="a_node20"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1556" xlink:title="Test Deploying TDN Framework to AWS/Beijing Region">
254
- <ellipse fill="red" stroke="black" cx="1598.99" cy="-362" rx="44.9768" ry="18"/>
255
- <text text-anchor="middle" x="1598.99" y="-357.8" font-family="Times,serif" font-size="14.00">INF&#45;1556</text>
256
- </a>
257
- </g>
258
- </g>
259
- <!-- INF&#45;1855&#45;&gt;INF&#45;1556 -->
260
- <g id="edge19" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1556</title>
261
- <path fill="none" stroke="orange" d="M1064.71,-432.507C1155.93,-428.783 1369.63,-416.582 1544.99,-380 1548.67,-379.232 1552.45,-378.314 1556.23,-377.308"/>
262
- <polygon fill="orange" stroke="orange" points="1557.48,-380.592 1566.14,-374.482 1555.56,-373.861 1557.48,-380.592"/>
263
- </g>
264
- <!-- INF&#45;1445 -->
265
- <g id="node21" class="node"><title>INF&#45;1445</title>
266
- <g id="a_node21"><a xlink:href="https://ensighten.atlassian.net/browse/INF-1445" xlink:title="Tagsync China Whitelist">
267
- <ellipse fill="lightgrey" stroke="black" cx="1706.99" cy="-362" rx="44.9768" ry="18"/>
268
- <text text-anchor="middle" x="1706.99" y="-357.8" font-family="Times,serif" font-size="14.00">INF&#45;1445</text>
269
- </a>
270
- </g>
271
- </g>
272
- <!-- INF&#45;1855&#45;&gt;INF&#45;1445 -->
273
- <g id="edge20" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;1445</title>
274
- <path fill="none" stroke="orange" d="M1065,-433.688C1169.4,-432.201 1435.71,-424.012 1652.99,-380 1656.83,-379.221 1660.79,-378.272 1664.74,-377.224"/>
275
- <polygon fill="orange" stroke="orange" points="1665.78,-380.566 1674.44,-374.458 1663.86,-373.834 1665.78,-380.566"/>
276
- </g>
277
- <!-- INF&#45;324 -->
278
- <g id="node22" class="node"><title>INF&#45;324</title>
279
- <g id="a_node22"><a xlink:href="https://ensighten.atlassian.net/browse/INF-324" xlink:title="Capture AWS Tag Server image with Packer">
280
- <ellipse fill="green" stroke="black" cx="1164.99" cy="-362" rx="40.6335" ry="18"/>
281
- <text text-anchor="middle" x="1164.99" y="-357.8" font-family="Times,serif" font-size="14.00" fill="white">INF&#45;324</text>
282
- </a>
283
- </g>
284
- </g>
285
- <!-- INF&#45;1855&#45;&gt;INF&#45;324 -->
286
- <g id="edge21" class="edge"><title>INF&#45;1855&#45;&gt;INF&#45;324</title>
287
- <path fill="none" stroke="orange" d="M1053.63,-422.809C1070.86,-416.608 1091.95,-408.281 1109.99,-399 1118.78,-394.475 1127.92,-388.889 1136.17,-383.478"/>
288
- <polygon fill="orange" stroke="orange" points="1138.37,-386.219 1144.71,-377.734 1134.46,-380.411 1138.37,-386.219"/>
289
- </g>
290
- <!-- INF&#45;1960&#45;&gt;INF&#45;1961 -->
291
- <g id="edge22" class="edge"><title>INF&#45;1960&#45;&gt;INF&#45;1961</title>
292
- <path fill="none" stroke="red" d="M1070.33,-85.9289C1075.75,-75.9205 1083.46,-63.4321 1092.44,-54 1097.6,-48.5773 1103.72,-43.4993 1109.9,-38.9839"/>
293
- <polygon fill="red" stroke="red" points="1112.03,-41.7635 1118.27,-33.1958 1108.05,-36.0069 1112.03,-41.7635"/>
294
- <text text-anchor="middle" x="1111.26" y="-56.8" font-family="Times,serif" font-size="14.00">blocks</text>
295
- </g>
296
- <!-- INF&#45;1958&#45;&gt;INF&#45;1962 -->
297
- <g id="edge26" class="edge"><title>INF&#45;1958&#45;&gt;INF&#45;1962</title>
298
- <path fill="none" stroke="red" d="M1102.85,-177.979C1084.38,-171.648 1061.34,-163.151 1041.44,-154 1022.8,-145.432 1002.79,-134.366 986.615,-124.919"/>
299
- <polygon fill="red" stroke="red" points="987.967,-121.652 977.577,-119.575 984.404,-127.678 987.967,-121.652"/>
300
- <text text-anchor="middle" x="1060.26" y="-142.8" font-family="Times,serif" font-size="14.00">blocks</text>
301
- </g>
302
- <!-- INF&#45;1958&#45;&gt;INF&#45;1961 -->
303
- <g id="edge25" class="edge"><title>INF&#45;1958&#45;&gt;INF&#45;1961</title>
304
- <path fill="none" stroke="red" d="M1137.6,-171.764C1138.64,-142.159 1140.78,-81.4326 1142.03,-46.1122"/>
305
- <polygon fill="red" stroke="red" points="1145.53,-46.1462 1142.39,-36.0289 1138.54,-45.8992 1145.53,-46.1462"/>
306
- <text text-anchor="middle" x="1159.26" y="-99.8" font-family="Times,serif" font-size="14.00">blocks</text>
307
- </g>
308
- <!-- INF&#45;1958&#45;&gt;INF&#45;1960 -->
309
- <g id="edge24" class="edge"><title>INF&#45;1958&#45;&gt;INF&#45;1960</title>
310
- <path fill="none" stroke="red" d="M1114.83,-174.011C1107.23,-168.27 1099,-161.327 1092.44,-154 1086.19,-147.029 1080.45,-138.619 1075.68,-130.749"/>
311
- <polygon fill="red" stroke="red" points="1078.58,-128.78 1070.54,-121.878 1072.52,-132.286 1078.58,-128.78"/>
312
- <text text-anchor="middle" x="1111.26" y="-142.8" font-family="Times,serif" font-size="14.00">blocks</text>
313
- </g>
314
- <!-- INF&#45;1958&#45;&gt;INF&#45;1959 -->
315
- <g id="edge23" class="edge"><title>INF&#45;1958&#45;&gt;INF&#45;1959</title>
316
- <path fill="none" stroke="red" d="M1156.43,-173.593C1173.02,-160.45 1197.05,-141.404 1215.59,-126.715"/>
317
- <polygon fill="red" stroke="red" points="1218.01,-129.263 1223.67,-120.309 1213.66,-123.777 1218.01,-129.263"/>
318
- <text text-anchor="middle" x="1215.26" y="-142.8" font-family="Times,serif" font-size="14.00">blocks</text>
319
- </g>
320
- <!-- INF&#45;1957&#45;&gt;INF&#45;1958 -->
321
- <g id="edge27" class="edge"><title>INF&#45;1957&#45;&gt;INF&#45;1958</title>
322
- <path fill="none" stroke="red" d="M1162.51,-258.001C1158.09,-246.388 1152.14,-230.765 1147.09,-217.526"/>
323
- <polygon fill="red" stroke="red" points="1150.29,-216.072 1143.45,-207.973 1143.74,-218.564 1150.29,-216.072"/>
324
- <text text-anchor="middle" x="1173.26" y="-228.8" font-family="Times,serif" font-size="14.00">blocks</text>
325
- </g>
326
- <!-- INF&#45;1955&#45;&gt;INF&#45;1967 -->
327
- <g id="edge28" class="edge"><title>INF&#45;1955&#45;&gt;INF&#45;1967</title>
328
- <path fill="none" stroke="red" d="M484.349,-344.06C488.581,-334.549 494.102,-322.514 499.437,-312 501.028,-308.864 502.753,-305.602 504.497,-302.386"/>
329
- <polygon fill="red" stroke="red" points="507.585,-304.033 509.365,-293.588 501.461,-300.643 507.585,-304.033"/>
330
- <text text-anchor="middle" x="518.264" y="-314.8" font-family="Times,serif" font-size="14.00">blocks</text>
331
- </g>
332
- <!-- INF&#45;324&#45;&gt;INF&#45;1957 -->
333
- <g id="edge29" class="edge"><title>INF&#45;324&#45;&gt;INF&#45;1957</title>
334
- <path fill="none" stroke="red" d="M1165.8,-344.001C1166.34,-332.691 1167.06,-317.576 1167.68,-304.566"/>
335
- <polygon fill="red" stroke="red" points="1171.19,-304.417 1168.17,-294.262 1164.19,-304.084 1171.19,-304.417"/>
336
- <text text-anchor="middle" x="1186.26" y="-314.8" font-family="Times,serif" font-size="14.00">blocks</text>
337
- </g>
338
- </g>
339
- </svg>
@@ -1,35 +0,0 @@
1
- # coding: utf-8
2
- require 'rake'
3
-
4
- lib = File.expand_path('../lib', __FILE__)
5
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
6
- require 'jira_dependency_visualizer/version'
7
-
8
- Gem::Specification.new do |s|
9
- s.authors = ['Alejandro Figueroa']
10
- s.bindir = 'bin'
11
- s.description = 'Creates a graphviz file from a JIRA ticket\'s dependencies'
12
- s.email = ['alejandro@ideasftw.com']
13
- s.executables << 'jira_dependency_visualizer'
14
- s.files = FileList['lib/**/*.rb', 'bin/*', '[A-Z]*', 'spec/**/*'].to_a
15
- s.homepage = 'https://github.com/thejandroman/jira_dependency_visualizer'
16
- s.license = 'MIT'
17
- s.name = 'jira_dependency_visualizer'
18
- s.summary = 'Creates a graphviz file from a JIRA ticket\'s dependencies'
19
- s.required_ruby_version = ['>= 2.1.0', '<= 2.3.0']
20
- s.version = JiraDependencyVisualizer::VERSION
21
-
22
- s.add_dependency 'jira-ruby', '~> 0.1'
23
- s.add_dependency 'ruby-graphviz', '~> 1.2'
24
- s.add_dependency 'trollop', '~> 2.1'
25
-
26
- s.add_development_dependency 'bundler', '~> 1.11'
27
- s.add_development_dependency 'coveralls', '~> 0.8'
28
- s.add_development_dependency 'factory_girl', '~> 4.5'
29
- s.add_development_dependency 'guard-rspec', '~> 4.6'
30
- s.add_development_dependency 'pry', '~> 0.10'
31
- s.add_development_dependency 'rake', '~> 10.5'
32
- s.add_development_dependency 'rspec', '~> 3.4'
33
- s.add_development_dependency 'rubocop', '~> 0.37'
34
- s.add_development_dependency 'yard', '~> 0.8'
35
- end