avmtrf1-tools 0.4.0 → 0.5.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 +4 -4
- data/lib/avmtrf1.rb +5 -0
- data/lib/avmtrf1/default_jira.rb +17 -0
- data/lib/avmtrf1/git.rb +9 -0
- data/lib/avmtrf1/git/cached_repository.rb +27 -0
- data/lib/avmtrf1/git/issue_on_repository.rb +100 -0
- data/lib/avmtrf1/git/reference.rb +36 -0
- data/lib/avmtrf1/issues.rb +7 -0
- data/lib/avmtrf1/issues/factory.rb +21 -0
- data/lib/avmtrf1/jira.rb +8 -0
- data/lib/avmtrf1/jira/entities.rb +10 -0
- data/lib/avmtrf1/jira/entities/base.rb +20 -0
- data/lib/avmtrf1/jira/entities/issue.rb +30 -0
- data/lib/avmtrf1/jira/instance.rb +56 -0
- data/lib/avmtrf1/result.rb +32 -0
- data/lib/avmtrf1/tools/runner.rb +1 -0
- data/lib/avmtrf1/tools/runner/git.rb +23 -0
- data/lib/avmtrf1/tools/runner/git/issues_check.rb +70 -0
- data/lib/avmtrf1/tools/version.rb +1 -1
- metadata +45 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2d8d6c82baf32fce3a7b2cd8e524019d91de52e3d7df1396e8e7e5017177310d
|
4
|
+
data.tar.gz: 2816f7f03a19c4b87c076beda3ef0ba9330799a9e0ce2a2589a2ea773457594a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 54b6265302b285dfb26724fad9ba7243e2838437ad95dc59e27290df16deb7b04db47414c110d704ff58892026d674d272108bf4e4524852369097f2eddfd08c
|
7
|
+
data.tar.gz: 7a041075a270a408e89bce071c2af63b3c374ba759d16be55b8529b5da080631ea7ddfa48bc51993cbb5fa24da38aebb9c67c634977821d450d60f3ebf9fceb7
|
data/lib/avmtrf1.rb
CHANGED
@@ -4,9 +4,14 @@ module Avmtrf1
|
|
4
4
|
require 'avmtrf1/active_directory'
|
5
5
|
require 'avmtrf1/ad_user'
|
6
6
|
require 'avmtrf1/configs'
|
7
|
+
require 'avmtrf1/default_jira'
|
8
|
+
require 'avmtrf1/git'
|
7
9
|
require 'avmtrf1/ini'
|
10
|
+
require 'avmtrf1/issues'
|
11
|
+
require 'avmtrf1/jira'
|
8
12
|
require 'avmtrf1/oracle'
|
9
13
|
require 'avmtrf1/patches'
|
10
14
|
require 'avmtrf1/red'
|
15
|
+
require 'avmtrf1/result'
|
11
16
|
require 'avmtrf1/tools'
|
12
17
|
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'avmtrf1/jira/instance'
|
4
|
+
|
5
|
+
module Avmtrf1
|
6
|
+
DEFAULT_JIRA_PATH_PREFIX = 'default.jira'
|
7
|
+
|
8
|
+
class << self
|
9
|
+
def default_jira
|
10
|
+
@default_jira ||= ::Avmtrf1::Jira::Instance.new(
|
11
|
+
'https://jira.engesoftware.com.br',
|
12
|
+
::Avmtrf1.configs.read_entry("#{DEFAULT_JIRA_PATH_PREFIX}.username"),
|
13
|
+
::Avmtrf1.configs.read_password("#{DEFAULT_JIRA_PATH_PREFIX}.password")
|
14
|
+
)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
data/lib/avmtrf1/git.rb
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'eac_launcher/git/base'
|
4
|
+
|
5
|
+
module Avmtrf1
|
6
|
+
module Git
|
7
|
+
class CachedRepository < ::EacLauncher::Git::Base
|
8
|
+
attr_reader :url
|
9
|
+
|
10
|
+
def initialize(url)
|
11
|
+
@url = url
|
12
|
+
super local_path
|
13
|
+
init
|
14
|
+
assert_remote_url('origin', url)
|
15
|
+
system!('fetch', 'origin', '-pPt')
|
16
|
+
end
|
17
|
+
|
18
|
+
private
|
19
|
+
|
20
|
+
def local_path
|
21
|
+
r = ::File.join(ENV['HOME'], '.cache', 'git_cached_repositories', url.parameterize)
|
22
|
+
::FileUtils.mkdir_p(::File.dirname(r))
|
23
|
+
r
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,100 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'eac_ruby_utils/console/speaker'
|
4
|
+
require 'eac_ruby_utils/simple_cache'
|
5
|
+
require 'avmtrf1/result'
|
6
|
+
|
7
|
+
module Avmtrf1
|
8
|
+
module Git
|
9
|
+
class IssueOnRepository
|
10
|
+
include ::EacRubyUtils::Console::Speaker
|
11
|
+
include ::EacRubyUtils::SimpleCache
|
12
|
+
|
13
|
+
CHECKS = %w[no_branch_nor_tag branch_and_tag issue_not_found issue_closed_git_open
|
14
|
+
issue_open_git_closed issue_open_git_open issue_closed_git_closed].freeze
|
15
|
+
|
16
|
+
def initialize(issue_id, refs)
|
17
|
+
@issue_id = issue_id
|
18
|
+
@refs = refs
|
19
|
+
end
|
20
|
+
|
21
|
+
def check
|
22
|
+
infov issue_id, "#{result.label} [#{issue ? issue.status_name : '-'}]"
|
23
|
+
end
|
24
|
+
|
25
|
+
private
|
26
|
+
|
27
|
+
attr_reader :issue_id, :refs
|
28
|
+
|
29
|
+
def result_uncached
|
30
|
+
CHECKS.each do |check|
|
31
|
+
result = send("#{check}_check")
|
32
|
+
return result if result
|
33
|
+
end
|
34
|
+
::Avmtrf1::Result.error('condição não encontrada')
|
35
|
+
end
|
36
|
+
|
37
|
+
def no_branch_nor_tag_check
|
38
|
+
return nil unless branch_ref.blank? && tag_ref.blank?
|
39
|
+
|
40
|
+
::Avmtrf1::Result.error("nem branch nem tag encontrado com o nome \"#{issue_id}\"")
|
41
|
+
end
|
42
|
+
|
43
|
+
def branch_and_tag_check
|
44
|
+
return nil unless branch_ref.present? && tag_ref.present?
|
45
|
+
|
46
|
+
::Avmtrf1::Result.error("há uma branch e uma tag com o nome \"#{issue_id}\"")
|
47
|
+
end
|
48
|
+
|
49
|
+
def issue_not_found_check
|
50
|
+
return nil if issue.present?
|
51
|
+
|
52
|
+
if tag_ref.present?
|
53
|
+
::Avmtrf1::Result.ok('demanda não encontrada e Git fechado')
|
54
|
+
else
|
55
|
+
::Avmtrf1::Result.error('demanda não encontrada e Git aberto')
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
def issue_closed_git_open_check
|
60
|
+
return nil unless issue.closed? && !git_closed?
|
61
|
+
|
62
|
+
::Avmtrf1::Result.error('demanda fechada e Git aberto')
|
63
|
+
end
|
64
|
+
|
65
|
+
def issue_open_git_closed_check
|
66
|
+
return nil unless !issue.closed? && git_closed?
|
67
|
+
|
68
|
+
::Avmtrf1::Result.error('demanda aberta e Git fechado')
|
69
|
+
end
|
70
|
+
|
71
|
+
def issue_open_git_open_check
|
72
|
+
return nil unless !issue.closed? && !git_closed?
|
73
|
+
|
74
|
+
::Avmtrf1::Result.ok('demanda aberta e Git aberto')
|
75
|
+
end
|
76
|
+
|
77
|
+
def issue_closed_git_closed_check
|
78
|
+
return nil unless issue.closed? && git_closed?
|
79
|
+
|
80
|
+
::Avmtrf1::Result.ok('demanda fechada e Git fechado')
|
81
|
+
end
|
82
|
+
|
83
|
+
def git_closed?
|
84
|
+
tag_ref.present?
|
85
|
+
end
|
86
|
+
|
87
|
+
def branch_ref_uncached
|
88
|
+
refs.find { |ref| ref.type == 'head' }
|
89
|
+
end
|
90
|
+
|
91
|
+
def tag_ref_uncached
|
92
|
+
refs.find { |ref| ref.type == 'tag' }
|
93
|
+
end
|
94
|
+
|
95
|
+
def issue_uncached
|
96
|
+
::AvmTrf1::IssueFactory.find(issue_id)
|
97
|
+
end
|
98
|
+
end
|
99
|
+
end
|
100
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'ostruct'
|
4
|
+
|
5
|
+
module Avmtrf1
|
6
|
+
module Git
|
7
|
+
class Reference
|
8
|
+
include ::EacRubyUtils::SimpleCache
|
9
|
+
|
10
|
+
attr_reader :revision, :fullname
|
11
|
+
|
12
|
+
def initialize(git, fullname, revision)
|
13
|
+
@git = git
|
14
|
+
@fullname = fullname
|
15
|
+
@revision = revision
|
16
|
+
end
|
17
|
+
|
18
|
+
def type_uncached
|
19
|
+
parsed_fullname.type
|
20
|
+
end
|
21
|
+
|
22
|
+
def name
|
23
|
+
parsed_fullname.name
|
24
|
+
end
|
25
|
+
|
26
|
+
private
|
27
|
+
|
28
|
+
def parsed_fullname_uncached
|
29
|
+
m = %r{\Arefs/([^/]+)s/(.+)\z}.match(fullname)
|
30
|
+
return ::OpenStruct.new(name: m[2], type: m[1]) if m
|
31
|
+
|
32
|
+
raise "\"#{fullname}\" not match ref pattern"
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'avmtrf1/default_jira'
|
4
|
+
|
5
|
+
module AvmTrf1
|
6
|
+
class IssueFactory
|
7
|
+
class << self
|
8
|
+
def find(issue_id)
|
9
|
+
factories.each do |factory|
|
10
|
+
issue = factory.find_issue(issue_id)
|
11
|
+
return issue if issue
|
12
|
+
end
|
13
|
+
nil
|
14
|
+
end
|
15
|
+
|
16
|
+
def factories
|
17
|
+
[::Avmtrf1.default_jira]
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
data/lib/avmtrf1/jira.rb
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'eac_ruby_utils/simple_cache'
|
4
|
+
|
5
|
+
module Avmtrf1
|
6
|
+
module Jira
|
7
|
+
module Entities
|
8
|
+
class Base
|
9
|
+
include ::EacRubyUtils::SimpleCache
|
10
|
+
|
11
|
+
attr_reader :instance, :data
|
12
|
+
|
13
|
+
def initialize(instance, data)
|
14
|
+
@instance = instance
|
15
|
+
@data = data
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'avmtrf1/jira/entities/base'
|
4
|
+
|
5
|
+
module Avmtrf1
|
6
|
+
module Jira
|
7
|
+
module Entities
|
8
|
+
class Issue < ::Avmtrf1::Jira::Entities::Base
|
9
|
+
CATEGORY_CLOSED_STATUSES = %w[Pendências Concluído].freeze
|
10
|
+
CATEGORY_OPEN_STATUSES = ['Em andamento'].freeze
|
11
|
+
|
12
|
+
def status_name
|
13
|
+
data.fetch('fields').fetch('status').fetch('name')
|
14
|
+
end
|
15
|
+
|
16
|
+
def status_category_name
|
17
|
+
data.fetch('fields').fetch('status').fetch('statusCategory').fetch('name')
|
18
|
+
end
|
19
|
+
|
20
|
+
def closed?
|
21
|
+
return true if CATEGORY_CLOSED_STATUSES.include?(status_category_name)
|
22
|
+
return false if CATEGORY_OPEN_STATUSES.include?(status_category_name)
|
23
|
+
|
24
|
+
raise "Unknown category status \"#{status_category_name}\"" \
|
25
|
+
" (Status: \"#{status_name}\")"
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,56 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'curb'
|
4
|
+
require 'json'
|
5
|
+
|
6
|
+
module Avmtrf1
|
7
|
+
module Jira
|
8
|
+
class Instance
|
9
|
+
ISSUE_ID_PATTERN = /\A([a-z][a-z0-9]+)\-(\d+)\z/i.freeze
|
10
|
+
|
11
|
+
class << self
|
12
|
+
def parse_issue_id(issue_id)
|
13
|
+
m = ISSUE_ID_PATTERN.match(issue_id)
|
14
|
+
return nil unless m
|
15
|
+
|
16
|
+
::OpenStruct.new(project_id: m[1], project_issue_id: m[2])
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
attr_reader :root_url, :username
|
21
|
+
|
22
|
+
def initialize(root_url, username, password)
|
23
|
+
@root_url = root_url
|
24
|
+
@username = username
|
25
|
+
@password = password
|
26
|
+
end
|
27
|
+
|
28
|
+
def find_issue(issue_id)
|
29
|
+
parsed = self.class.parse_issue_id(issue_id)
|
30
|
+
parsed.present? ? issue(issue_id) : nil
|
31
|
+
end
|
32
|
+
|
33
|
+
def issue(issue_id)
|
34
|
+
::Avmtrf1::Jira::Entities::Issue.new(self, request("/issue/#{issue_id}"))
|
35
|
+
end
|
36
|
+
|
37
|
+
def request(service_url_suffix)
|
38
|
+
c = ::Curl::Easy.new(build_service_url(service_url_suffix))
|
39
|
+
c.http_auth_types = :basic
|
40
|
+
c.username = username
|
41
|
+
c.password = password
|
42
|
+
raise 'Curl failed' unless c.perform
|
43
|
+
|
44
|
+
JSON.parse(c.body_str)
|
45
|
+
end
|
46
|
+
|
47
|
+
private
|
48
|
+
|
49
|
+
attr_reader :password
|
50
|
+
|
51
|
+
def build_service_url(service_url_suffix)
|
52
|
+
"#{root_url}/rest/api/latest#{service_url_suffix}"
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'colorize'
|
4
|
+
|
5
|
+
module Avmtrf1
|
6
|
+
class Result
|
7
|
+
class << self
|
8
|
+
def ok(output)
|
9
|
+
new(true, output)
|
10
|
+
end
|
11
|
+
|
12
|
+
def error(output)
|
13
|
+
new(false, output)
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
attr_reader :output
|
18
|
+
|
19
|
+
def initialize(is_ok, output)
|
20
|
+
@ok = is_ok
|
21
|
+
@output = output
|
22
|
+
end
|
23
|
+
|
24
|
+
def ok?
|
25
|
+
@ok ? true : false
|
26
|
+
end
|
27
|
+
|
28
|
+
def label
|
29
|
+
ok? ? output.green : output.red
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
data/lib/avmtrf1/tools/runner.rb
CHANGED
@@ -0,0 +1,23 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'eac_ruby_utils/console/docopt_runner'
|
4
|
+
require 'avmtrf1/tools/runner/git/issues_check'
|
5
|
+
|
6
|
+
module Avmtrf1
|
7
|
+
module Tools
|
8
|
+
class Runner < ::EacRubyUtils::Console::DocoptRunner
|
9
|
+
class Git < ::EacRubyUtils::Console::DocoptRunner
|
10
|
+
DOC = <<~DOCOPT
|
11
|
+
Utilidades para Git.
|
12
|
+
|
13
|
+
Usage:
|
14
|
+
__PROGRAM__ __SUBCOMMANDS__
|
15
|
+
__PROGRAM__ -h | --help
|
16
|
+
|
17
|
+
Options:
|
18
|
+
-h --help Mostra esta ajuda.
|
19
|
+
DOCOPT
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,70 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'eac_ruby_utils/console/docopt_runner'
|
4
|
+
require 'eac_ruby_utils/console/speaker'
|
5
|
+
require 'eac_ruby_utils/simple_cache'
|
6
|
+
require 'avmtrf1/git/cached_repository'
|
7
|
+
|
8
|
+
module Avmtrf1
|
9
|
+
module Tools
|
10
|
+
class Runner < ::EacRubyUtils::Console::DocoptRunner
|
11
|
+
class Git < ::EacRubyUtils::Console::DocoptRunner
|
12
|
+
class IssuesCheck < ::EacRubyUtils::Console::DocoptRunner
|
13
|
+
include ::EacRubyUtils::SimpleCache
|
14
|
+
include ::EacRubyUtils::Console::Speaker
|
15
|
+
|
16
|
+
DOC = <<~DOCOPT
|
17
|
+
Confronta situação das demandas no Git com a situação nos trackers.
|
18
|
+
|
19
|
+
Usage:
|
20
|
+
__PROGRAM__ [options] <git-url>
|
21
|
+
__PROGRAM__ -h | --help
|
22
|
+
|
23
|
+
Options:
|
24
|
+
-h --help Mostra esta ajuda.
|
25
|
+
DOCOPT
|
26
|
+
|
27
|
+
def run
|
28
|
+
infov 'Repository path', git_url
|
29
|
+
infov 'Remote hashs found', remote_hashs.count
|
30
|
+
infov 'Issues found', issues_on_repository.count
|
31
|
+
issues_on_repository.each(&:check)
|
32
|
+
end
|
33
|
+
|
34
|
+
private
|
35
|
+
|
36
|
+
def git_url
|
37
|
+
options.fetch('<git-url>')
|
38
|
+
end
|
39
|
+
|
40
|
+
def git_uncached
|
41
|
+
::Avmtrf1::Git::CachedRepository.new(git_url)
|
42
|
+
end
|
43
|
+
|
44
|
+
def remote_hashs_uncached
|
45
|
+
git.remote_hashs('origin').select do |fullname, _revision|
|
46
|
+
issue_ref?(fullname)
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
def issues_on_repository_uncached
|
51
|
+
r = {}
|
52
|
+
remote_hashs.each do |fullname, revision|
|
53
|
+
ref = ::Avmtrf1::Git::Reference.new(git, fullname, revision)
|
54
|
+
r[ref.name] ||= []
|
55
|
+
r[ref.name] << ref
|
56
|
+
end
|
57
|
+
r.sort.map { |issue_id, refs| ::Avmtrf1::Git::IssueOnRepository.new(issue_id, refs) }
|
58
|
+
end
|
59
|
+
|
60
|
+
def issue_ref?(fullname)
|
61
|
+
return false unless fullname.start_with?('refs/')
|
62
|
+
return false if fullname == 'refs/heads/master'
|
63
|
+
|
64
|
+
true
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: avmtrf1-tools
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Eduardo H. Bogoni
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-08-
|
11
|
+
date: 2019-08-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aranha
|
@@ -24,6 +24,34 @@ dependencies:
|
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: 0.9.0
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: curb
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 0.9.10
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 0.9.10
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: eac_launcher
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0.6'
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0.6'
|
27
55
|
- !ruby/object:Gem::Dependency
|
28
56
|
name: eac_ruby_utils
|
29
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -145,6 +173,7 @@ files:
|
|
145
173
|
- lib/avmtrf1/check_point/session.rb
|
146
174
|
- lib/avmtrf1/check_point/session/login.rb
|
147
175
|
- lib/avmtrf1/configs.rb
|
176
|
+
- lib/avmtrf1/default_jira.rb
|
148
177
|
- lib/avmtrf1/esosti/parsers/solicitacao/main.rb
|
149
178
|
- lib/avmtrf1/esosti/session.rb
|
150
179
|
- lib/avmtrf1/esosti/session/action_base.rb
|
@@ -152,8 +181,19 @@ files:
|
|
152
181
|
- lib/avmtrf1/esosti/session/login.rb
|
153
182
|
- lib/avmtrf1/esosti/session/solicitacao.rb
|
154
183
|
- lib/avmtrf1/esosti/session/solicitacao/main.rb
|
184
|
+
- lib/avmtrf1/git.rb
|
185
|
+
- lib/avmtrf1/git/cached_repository.rb
|
186
|
+
- lib/avmtrf1/git/issue_on_repository.rb
|
187
|
+
- lib/avmtrf1/git/reference.rb
|
155
188
|
- lib/avmtrf1/ini.rb
|
156
189
|
- lib/avmtrf1/ini/profile.rb
|
190
|
+
- lib/avmtrf1/issues.rb
|
191
|
+
- lib/avmtrf1/issues/factory.rb
|
192
|
+
- lib/avmtrf1/jira.rb
|
193
|
+
- lib/avmtrf1/jira/entities.rb
|
194
|
+
- lib/avmtrf1/jira/entities/base.rb
|
195
|
+
- lib/avmtrf1/jira/entities/issue.rb
|
196
|
+
- lib/avmtrf1/jira/instance.rb
|
157
197
|
- lib/avmtrf1/oracle.rb
|
158
198
|
- lib/avmtrf1/oracle/connection.rb
|
159
199
|
- lib/avmtrf1/oracle/connection/base.rb
|
@@ -167,11 +207,14 @@ files:
|
|
167
207
|
- lib/avmtrf1/red/profile.rb
|
168
208
|
- lib/avmtrf1/red/profile/put_file.xml.erb
|
169
209
|
- lib/avmtrf1/red/server.rb
|
210
|
+
- lib/avmtrf1/result.rb
|
170
211
|
- lib/avmtrf1/tools.rb
|
171
212
|
- lib/avmtrf1/tools/runner.rb
|
172
213
|
- lib/avmtrf1/tools/runner/check_point.rb
|
173
214
|
- lib/avmtrf1/tools/runner/check_point/login.rb
|
174
215
|
- lib/avmtrf1/tools/runner/esosti.rb
|
216
|
+
- lib/avmtrf1/tools/runner/git.rb
|
217
|
+
- lib/avmtrf1/tools/runner/git/issues_check.rb
|
175
218
|
- lib/avmtrf1/tools/runner/oracle.rb
|
176
219
|
- lib/avmtrf1/tools/runner/oracle/source_get.rb
|
177
220
|
- lib/avmtrf1/tools/runner/red.rb
|