avmtrf1-tools 0.41.1 → 0.42.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +2 -2
- data/exe/avmtrf1 +1 -1
- data/lib/avmtrf1/docker/image.rb +9 -9
- data/lib/avmtrf1/docker/image_runner.rb +1 -1
- data/lib/avmtrf1/esosti/entities/issue.rb +2 -2
- data/lib/avmtrf1/esosti/instance/changed.rb +1 -1
- data/lib/avmtrf1/esosti/session/solicitacao.rb +4 -4
- data/lib/avmtrf1/esosti/session.rb +1 -1
- data/lib/avmtrf1/executables.rb +1 -1
- data/lib/avmtrf1/forponto/parsers/espelho/methods_as_fields.rb +1 -1
- data/lib/avmtrf1/forponto/parsers/espelho/summary_node.rb +3 -3
- data/lib/avmtrf1/forponto/parsers/espelho/utils.rb +1 -1
- data/lib/avmtrf1/forponto/session/day_registers.rb +1 -1
- data/lib/avmtrf1/forponto/session.rb +1 -1
- data/lib/avmtrf1/forponto/user/balance.rb +4 -6
- data/lib/avmtrf1/forponto/user/day_registers.rb +2 -2
- data/lib/avmtrf1/forponto/user/month.rb +2 -2
- data/lib/avmtrf1/forponto/user.rb +1 -1
- data/lib/avmtrf1/git/cached_repository.rb +2 -2
- data/lib/avmtrf1/git/push_large/lfs_commit/helpers.rb +1 -1
- data/lib/avmtrf1/git/push_large/lfs_commit/push.rb +1 -1
- data/lib/avmtrf1/git/push_large/lfs_commit.rb +1 -1
- data/lib/avmtrf1/git/reference.rb +1 -1
- data/lib/avmtrf1/gitlab/repository.rb +2 -2
- data/lib/avmtrf1/ini/profile.rb +1 -1
- data/lib/avmtrf1/ini.rb +2 -2
- data/lib/avmtrf1/inventario_sistemas/parser/body_row.rb +1 -1
- data/lib/avmtrf1/inventario_sistemas/site_build/html_page_base/elements.rb +2 -2
- data/lib/avmtrf1/inventario_sistemas/site_build/html_page_base/layout.rb +21 -21
- data/lib/avmtrf1/inventario_sistemas/site_build/sistema.rb +2 -2
- data/lib/avmtrf1/inventario_sistemas/site_build.rb +3 -3
- data/lib/avmtrf1/jira/entities/issue.rb +2 -2
- data/lib/avmtrf1/jira/instance.rb +2 -2
- data/lib/avmtrf1/openvpn/config/builder.rb +1 -1
- data/lib/avmtrf1/openvpn/config/parser/builder.rb +1 -1
- data/lib/avmtrf1/openvpn/config/parser/simple.rb +1 -1
- data/lib/avmtrf1/oracle/connection/string_builder.rb +1 -2
- data/lib/avmtrf1/oracle/connection.rb +1 -1
- data/lib/avmtrf1/oracle/objects/sql_builder.rb +1 -1
- data/lib/avmtrf1/oracle/objects.rb +1 -1
- data/lib/avmtrf1/oracle/oci8.rb +2 -2
- data/lib/avmtrf1/oracle.rb +1 -1
- data/lib/avmtrf1/patches/avm/git/issue/complete.rb +3 -3
- data/lib/avmtrf1/patches/avm/git/issue.rb +1 -1
- data/lib/avmtrf1/patches/avm/git/launcher/base.rb +4 -4
- data/lib/avmtrf1/patches/avm/git/launcher.rb +1 -1
- data/lib/avmtrf1/patches/avm/git.rb +1 -1
- data/lib/avmtrf1/patches/avm.rb +1 -1
- data/lib/avmtrf1/patches.rb +1 -1
- data/lib/avmtrf1/php/docker_images/v5.rb +13 -13
- data/lib/avmtrf1/red/client.rb +1 -1
- data/lib/avmtrf1/redmine/instance.rb +1 -1
- data/lib/avmtrf1/rest_provider/request.rb +1 -1
- data/lib/avmtrf1/rest_provider/response.rb +1 -1
- data/lib/avmtrf1/result.rb +1 -1
- data/lib/avmtrf1/tools/msgraph/api/entity.rb +16 -3
- data/lib/avmtrf1/tools/msgraph/api/team/member_add.rb +36 -0
- data/lib/avmtrf1/tools/msgraph/api/team.rb +8 -1
- data/lib/avmtrf1/tools/msgraph/api.rb +2 -5
- data/lib/avmtrf1/tools/msgraph/error.rb +31 -0
- data/lib/avmtrf1/tools/msgraph/response_mixin.rb +5 -33
- data/lib/avmtrf1/tools/msgraph/token_retrieve.rb +2 -2
- data/lib/avmtrf1/{ruby/gems → tools/rubygems}/dependency.rb +4 -4
- data/lib/avmtrf1/{ruby/gems → tools/rubygems}/not_found_error.rb +4 -4
- data/lib/avmtrf1/{ruby/gems.rb → tools/rubygems.rb} +2 -2
- data/lib/avmtrf1/tools/runner/forponto/resumos.rb +2 -2
- data/lib/avmtrf1/tools/runner/forponto/saldo.rb +1 -1
- data/lib/avmtrf1/tools/runner/git/gitlab/commit_link.rb +3 -3
- data/lib/avmtrf1/tools/runner/git/gitlab.rb +2 -2
- data/lib/avmtrf1/tools/runner/git/issues_check.rb +1 -1
- data/lib/avmtrf1/tools/runner/git/push_large.rb +5 -5
- data/lib/avmtrf1/tools/runner/git.rb +2 -2
- data/lib/avmtrf1/tools/runner/msgraph/joined_teams.rb +10 -4
- data/lib/avmtrf1/tools/runner/msgraph/request.rb +1 -1
- data/lib/avmtrf1/tools/runner/msgraph/team/member/add.rb +48 -0
- data/lib/avmtrf1/tools/runner/msgraph/team/member.rb +25 -0
- data/lib/avmtrf1/tools/runner/msgraph/team/members.rb +11 -9
- data/lib/avmtrf1/tools/runner/openvpn.rb +2 -2
- data/lib/avmtrf1/tools/runner/oracle.rb +2 -2
- data/lib/avmtrf1/tools/runner/red.rb +4 -4
- data/lib/avmtrf1/tools/runner.rb +6 -5
- data/lib/avmtrf1/tools/version.rb +1 -1
- metadata +59 -22
- data/lib/avmtrf1/tools/msgraph/invalid_token_error.rb +0 -13
data/lib/avmtrf1/oracle.rb
CHANGED
@@ -28,7 +28,7 @@ module Avmtrf1
|
|
28
28
|
|
29
29
|
def parse_status_file(line)
|
30
30
|
m = /\A(.)(.)\s*(\S.*)\z/.match(line.strip)
|
31
|
-
return ::OpenStruct.new(stage: m[1], dirty: m[2], path: m[3]) if m
|
31
|
+
return ::OpenStruct.new(stage: m[1], dirty: m[2], path: m[3]) if m # rubocop:disable Style/OpenStructUse
|
32
32
|
|
33
33
|
raise "\"#{line.strip}\" did not match pattern"
|
34
34
|
end
|
@@ -40,7 +40,7 @@ module Avmtrf1
|
|
40
40
|
end
|
41
41
|
end
|
42
42
|
|
43
|
-
|
44
|
-
|
45
|
-
|
43
|
+
EacRubyUtils.patch(
|
44
|
+
Avm::Git::Launcher::Base,
|
45
|
+
Avmtrf1::Patches::Avm::Git::Launcher::Base
|
46
46
|
)
|
data/lib/avmtrf1/patches/avm.rb
CHANGED
data/lib/avmtrf1/patches.rb
CHANGED
@@ -8,20 +8,20 @@ module Avmtrf1
|
|
8
8
|
module DockerImages
|
9
9
|
class V5 < ::Avmtrf1::Php::DockerImages::Base
|
10
10
|
MCRYPT_INSTALL = <<~CODE
|
11
|
-
|
11
|
+
RUN docker-php-ext-install mcrypt
|
12
|
+
CODE
|
13
|
+
XDEBUG_INSTALL = <<~CODE
|
14
|
+
RUN apt-get install -y git
|
15
|
+
RUN cd /tmp && \
|
16
|
+
git clone https://github.com/xdebug/xdebug.git && \
|
17
|
+
cd xdebug && \
|
18
|
+
git checkout XDEBUG_2_5_5 && \
|
19
|
+
phpize && \
|
20
|
+
./configure --enable-xdebug && \
|
21
|
+
make && \
|
22
|
+
make install && \
|
23
|
+
rm -rf /tmp/xdebug
|
12
24
|
CODE
|
13
|
-
XDEBUG_INSTALL = <<CODE
|
14
|
-
RUN apt-get install -y git
|
15
|
-
RUN cd /tmp && \
|
16
|
-
git clone https://github.com/xdebug/xdebug.git && \
|
17
|
-
cd xdebug && \
|
18
|
-
git checkout XDEBUG_2_5_5 && \
|
19
|
-
phpize && \
|
20
|
-
./configure --enable-xdebug && \
|
21
|
-
make && \
|
22
|
-
make install && \
|
23
|
-
rm -rf /tmp/xdebug
|
24
|
-
CODE
|
25
25
|
|
26
26
|
# @return [String]
|
27
27
|
def apt_setup
|
data/lib/avmtrf1/red/client.rb
CHANGED
@@ -12,7 +12,7 @@ module Avmtrf1
|
|
12
12
|
class << self
|
13
13
|
def parse_issue_id(issue_id)
|
14
14
|
m = ISSUE_ID_PATTERN.match(issue_id)
|
15
|
-
m ? ::OpenStruct.new(provider_issue_id: m[1]) : nil
|
15
|
+
m ? ::OpenStruct.new(provider_issue_id: m[1]) : nil # rubocop:disable Style/OpenStructUse
|
16
16
|
end
|
17
17
|
end
|
18
18
|
|
@@ -10,7 +10,7 @@ module Avmtrf1
|
|
10
10
|
common_constructor :url, :body_data_proc, default: [nil]
|
11
11
|
|
12
12
|
def autenticate(username, password)
|
13
|
-
self.auth = ::OpenStruct.new(username: username, password: password)
|
13
|
+
self.auth = ::OpenStruct.new(username: username, password: password) # rubocop:disable Style/OpenStructUse
|
14
14
|
end
|
15
15
|
|
16
16
|
def header(name, value)
|
data/lib/avmtrf1/result.rb
CHANGED
@@ -10,7 +10,7 @@ module Avmtrf1
|
|
10
10
|
lists.add_string :type, :success, :error, :neutral
|
11
11
|
|
12
12
|
lists.type.values.each do |type| # rubocop:disable Style/HashEachMethods
|
13
|
-
class_eval <<-RUBY_EVAL, __FILE__, __LINE__ + 1
|
13
|
+
class_eval <<-RUBY_EVAL, __FILE__, __LINE__ + 1 # rubocop:disable Style/DocumentDynamicEvalDefinition
|
14
14
|
def self.#{type}(output)
|
15
15
|
new(TYPE_#{type.upcase}, output)
|
16
16
|
end
|
@@ -1,5 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require 'avmtrf1/tools/msgraph/request_mixin'
|
3
4
|
require 'eac_rest/entity'
|
4
5
|
require 'eac_ruby_utils/core_ext'
|
5
6
|
|
@@ -8,13 +9,25 @@ module Avmtrf1
|
|
8
9
|
module Msgraph
|
9
10
|
class Api < ::EacRest::Api
|
10
11
|
class Entity < ::EacRest::Entity
|
11
|
-
def request_data(url_suffix)
|
12
|
-
req =
|
12
|
+
def request_data(url_suffix, &block)
|
13
|
+
req = request_data_request(url_suffix, &block)
|
13
14
|
req.response.body_data_or_raise
|
14
|
-
rescue ::Avmtrf1::Tools::Msgraph::
|
15
|
+
rescue ::Avmtrf1::Tools::Msgraph::Error => e
|
16
|
+
raise e unless e.invalid_token?
|
17
|
+
|
15
18
|
api.clear_token_info
|
16
19
|
req.response.body_data_or_raise
|
17
20
|
end
|
21
|
+
|
22
|
+
private
|
23
|
+
|
24
|
+
# @return [EacRest::Request]
|
25
|
+
def request_data_request(url_suffix, &block)
|
26
|
+
req = api.request(url_suffix)
|
27
|
+
req = block.call(req) if block
|
28
|
+
req.singleton_class.prepend(::Avmtrf1::Tools::Msgraph::RequestMixin)
|
29
|
+
req
|
30
|
+
end
|
18
31
|
end
|
19
32
|
end
|
20
33
|
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'avmtrf1/tools/msgraph/api/entity'
|
4
|
+
require 'eac_ruby_utils/core_ext'
|
5
|
+
|
6
|
+
module Avmtrf1
|
7
|
+
module Tools
|
8
|
+
module Msgraph
|
9
|
+
class Api < ::EacRest::Api
|
10
|
+
class Team < ::Avmtrf1::Tools::Msgraph::Api::Entity
|
11
|
+
class MemberAdd
|
12
|
+
acts_as_instance_method
|
13
|
+
|
14
|
+
common_constructor :team, :user_id
|
15
|
+
|
16
|
+
# @return [Hash]
|
17
|
+
def result
|
18
|
+
team.members_request do |req|
|
19
|
+
req.verb(:post).header('Content-type', 'application/json')
|
20
|
+
.body_data(body_hash.to_json)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
# @return [Hash]
|
25
|
+
def body_hash
|
26
|
+
{
|
27
|
+
'@odata.type' => '#microsoft.graph.aadUserConversationMember',
|
28
|
+
'user@odata.bind' => "https://graph.microsoft.com/v1.0/users('#{user_id}')"
|
29
|
+
}
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -21,10 +21,17 @@ module Avmtrf1
|
|
21
21
|
end
|
22
22
|
|
23
23
|
def members
|
24
|
-
|
24
|
+
members_request.map do |member_data|
|
25
25
|
child_entity(::Avmtrf1::Tools::Msgraph::Api::Member, member_data)
|
26
26
|
end
|
27
27
|
end
|
28
|
+
|
29
|
+
# @return [EacRest::Request]
|
30
|
+
def members_request(&block)
|
31
|
+
request_data("/teams/#{id}/members", &block)
|
32
|
+
end
|
33
|
+
|
34
|
+
require_sub __FILE__, require_mode: :kernel
|
28
35
|
end
|
29
36
|
end
|
30
37
|
end
|
@@ -1,6 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require 'avmtrf1/tools/msgraph/request_mixin'
|
4
3
|
require 'eac_rest/api'
|
5
4
|
require 'eac_ruby_utils/core_ext'
|
6
5
|
|
@@ -26,10 +25,8 @@ module Avmtrf1
|
|
26
25
|
|
27
26
|
# @return [EacRest::Request]
|
28
27
|
def request(service_url_suffix, headers = {}, &body_data_proc)
|
29
|
-
|
30
|
-
|
31
|
-
r.singleton_class.prepend(::Avmtrf1::Tools::Msgraph::RequestMixin)
|
32
|
-
r
|
28
|
+
super(service_url_suffix, headers, &body_data_proc)
|
29
|
+
.header('Authorization', "Bearer #{access_token}")
|
33
30
|
end
|
34
31
|
|
35
32
|
def fs_object_id
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'eac_rest/error'
|
4
|
+
require 'eac_ruby_utils/core_ext'
|
5
|
+
|
6
|
+
module Avmtrf1
|
7
|
+
module Tools
|
8
|
+
module Msgraph
|
9
|
+
class Error < ::EacRest::Error
|
10
|
+
INVALID_TOKEN_CODE = 'InvalidAuthenticationToken'
|
11
|
+
|
12
|
+
attr_reader :data
|
13
|
+
|
14
|
+
def initialize(data)
|
15
|
+
@data = data
|
16
|
+
super(data.pretty_inspect)
|
17
|
+
end
|
18
|
+
|
19
|
+
# @return [String]
|
20
|
+
def code
|
21
|
+
data.fetch('code')
|
22
|
+
end
|
23
|
+
|
24
|
+
# @return [Boolean]
|
25
|
+
def invalid_token?
|
26
|
+
code == INVALID_TOKEN_CODE
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -1,6 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require '
|
3
|
+
require 'eac_rest/response'
|
4
|
+
require 'avmtrf1/tools/msgraph/error'
|
4
5
|
require 'eac_ruby_utils/core_ext'
|
5
6
|
|
6
7
|
module Avmtrf1
|
@@ -8,42 +9,13 @@ module Avmtrf1
|
|
8
9
|
module Msgraph
|
9
10
|
module ResponseMixin
|
10
11
|
ERROR_KEY = 'error'
|
11
|
-
INVALID_TOKEN_CODE = 'InvalidAuthenticationToken'
|
12
12
|
VALUE_KEY = 'value'
|
13
13
|
|
14
14
|
def body_data_or_raise
|
15
|
-
check_invalid_token
|
16
15
|
r = super
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
end
|
21
|
-
|
22
|
-
# @return [String, nil]
|
23
|
-
def error_code
|
24
|
-
return false unless body_data.is_a?(::Hash)
|
25
|
-
return false unless body_data.key?(ERROR_KEY)
|
26
|
-
|
27
|
-
body_data.fetch(ERROR_KEY).fetch('code')
|
28
|
-
end
|
29
|
-
|
30
|
-
protected
|
31
|
-
|
32
|
-
def body_hash_or_raise(result_data)
|
33
|
-
return result_data.fetch(VALUE_KEY) if result_data.key?(VALUE_KEY)
|
34
|
-
return raise_error_from_hash(result_data.fetch(ERROR_KEY)) if result_data.key?(ERROR_KEY)
|
35
|
-
|
36
|
-
nbr
|
37
|
-
end
|
38
|
-
|
39
|
-
def check_invalid_token
|
40
|
-
return unless error_code == INVALID_TOKEN_CODE
|
41
|
-
|
42
|
-
raise ::Avmtrf1::Tools::Msgraph::InvalidTokenError
|
43
|
-
end
|
44
|
-
|
45
|
-
def raise_error_from_hash(error_hash)
|
46
|
-
raise ::EacRest::Error, error_hash.pretty_inspect
|
16
|
+
r.is_a?(::Hash) && r.key?(VALUE_KEY) ? r.fetch(VALUE_KEY) : r
|
17
|
+
rescue ::EacRest::Response => e
|
18
|
+
raise ::Avmtrf1::Tools::Msgraph::Error, e.body_data.fetch(ERROR_KEY)
|
47
19
|
end
|
48
20
|
end
|
49
21
|
end
|
@@ -26,8 +26,8 @@ module Avmtrf1
|
|
26
26
|
# @return [String]
|
27
27
|
def result_string
|
28
28
|
::EacRubyUtils::Fs::Temp.on_file do |file|
|
29
|
-
raise
|
30
|
-
|
29
|
+
raise result.pretty_inspect.to_s unless python_retrieve_command(file.to_path)
|
30
|
+
.system
|
31
31
|
|
32
32
|
file.read
|
33
33
|
end
|
@@ -1,18 +1,18 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require 'eac_ruby_utils/core_ext'
|
4
|
-
require 'avmtrf1/
|
4
|
+
require 'avmtrf1/tools/rubygems/not_found_error'
|
5
5
|
|
6
6
|
module Avmtrf1
|
7
|
-
module
|
8
|
-
module
|
7
|
+
module Tools
|
8
|
+
module Rubygems
|
9
9
|
class Dependency
|
10
10
|
common_constructor :gem_name, :lib_name
|
11
11
|
|
12
12
|
def require_lib
|
13
13
|
require lib_name
|
14
14
|
rescue LoadError
|
15
|
-
raise ::Avmtrf1::
|
15
|
+
raise ::Avmtrf1::Tools::Rubygems::NotFoundError, self
|
16
16
|
end
|
17
17
|
end
|
18
18
|
end
|
@@ -1,15 +1,15 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module Avmtrf1
|
4
|
-
module
|
5
|
-
module
|
4
|
+
module Tools
|
5
|
+
module Rubygems
|
6
6
|
class NotFoundError < ::StandardError
|
7
7
|
attr_reader :dependency
|
8
8
|
|
9
9
|
def initialize(dependency)
|
10
10
|
@dependency = dependency
|
11
|
-
super("Gem \"#{dependency.gem_name}\" not found" \
|
12
|
-
|
11
|
+
super("Gem \"#{dependency.gem_name}\" not found " \
|
12
|
+
"(Library required: \"#{dependency.lib_name}\")")
|
13
13
|
end
|
14
14
|
end
|
15
15
|
end
|
@@ -18,7 +18,7 @@ module Avmtrf1
|
|
18
18
|
end
|
19
19
|
|
20
20
|
def head_month
|
21
|
-
today = ::Date.today
|
21
|
+
today = ::Date.today # rubocop:disable Rails/Date
|
22
22
|
date = ::Date.civil(today.year, today.month, 1)
|
23
23
|
runner_context.call(:user).month(date.year, date.month)
|
24
24
|
end
|
@@ -37,7 +37,7 @@ module Avmtrf1
|
|
37
37
|
|
38
38
|
def show_month_summaries(month)
|
39
39
|
month.os_data.summaries.each do |s|
|
40
|
-
infov ' * ' + summary_to_label(s), summary_to_value(s)
|
40
|
+
infov ' * ' + summary_to_label(s), summary_to_value(s) # rubocop:disable Style/StringConcatenation
|
41
41
|
end
|
42
42
|
end
|
43
43
|
|
@@ -58,7 +58,7 @@ module Avmtrf1
|
|
58
58
|
end
|
59
59
|
|
60
60
|
def show_month_end_resume(mba)
|
61
|
-
infov ' * Left', minutes_to_s(mba.left) + ' ' + left_status(mba)
|
61
|
+
infov ' * Left', minutes_to_s(mba.left) + ' ' + left_status(mba) # rubocop:disable Style/StringConcatenation
|
62
62
|
infov ' * After trigger', minutes_to_s(mba.after_trigger)
|
63
63
|
infov ' * After trigger acum.', minutes_to_s(mba.after_trigger_acum)
|
64
64
|
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require 'avm/
|
3
|
+
require 'avm/git/runners/base'
|
4
4
|
require 'avmtrf1/tools/core_ext'
|
5
5
|
require 'avmtrf1/gitlab/commit'
|
6
6
|
require 'avmtrf1/gitlab/repository'
|
@@ -8,7 +8,7 @@ require 'avmtrf1/gitlab/repository'
|
|
8
8
|
module Avmtrf1
|
9
9
|
module Tools
|
10
10
|
class Runner
|
11
|
-
class Git < ::Avm::
|
11
|
+
class Git < ::Avm::Git::Runners::Base
|
12
12
|
class Gitlab
|
13
13
|
class CommitLink
|
14
14
|
runner_with :help, :output do
|
@@ -60,7 +60,7 @@ module Avmtrf1
|
|
60
60
|
end
|
61
61
|
|
62
62
|
def output_content
|
63
|
-
commits.map { |c| commit_output(c) + "\n" }.join
|
63
|
+
commits.map { |c| commit_output(c) + "\n" }.join # rubocop:disable Style/StringConcatenation
|
64
64
|
end
|
65
65
|
|
66
66
|
def repository_banner
|
@@ -1,12 +1,12 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require 'avm/
|
3
|
+
require 'avm/git/runners/base'
|
4
4
|
require 'avmtrf1/tools/core_ext'
|
5
5
|
|
6
6
|
module Avmtrf1
|
7
7
|
module Tools
|
8
8
|
class Runner
|
9
|
-
class Git < ::Avm::
|
9
|
+
class Git < ::Avm::Git::Runners::Base
|
10
10
|
class Gitlab
|
11
11
|
require_sub __FILE__
|
12
12
|
runner_with :help, :subcommands do
|
@@ -6,7 +6,7 @@ require 'avmtrf1/git/cached_repository'
|
|
6
6
|
module Avmtrf1
|
7
7
|
module Tools
|
8
8
|
class Runner
|
9
|
-
class Git < ::Avm::
|
9
|
+
class Git < ::Avm::Git::Runners::Base
|
10
10
|
class IssuesCheck
|
11
11
|
runner_with :help do
|
12
12
|
desc 'Confronta situação das demandas no Git com a situação nos trackers.'
|
@@ -6,16 +6,16 @@ require 'avmtrf1/git/push_large'
|
|
6
6
|
module Avmtrf1
|
7
7
|
module Tools
|
8
8
|
class Runner
|
9
|
-
class Git < ::Avm::
|
9
|
+
class Git < ::Avm::Git::Runners::Base
|
10
10
|
class PushLarge
|
11
11
|
DEFAULT_REPO_PATH = '.'
|
12
12
|
DEFAULT_REMOTE = 'origin'
|
13
13
|
|
14
14
|
runner_with :help do
|
15
|
-
desc 'Realiza push de repositórios grandes (Que falham com "pack exceeds maximum' \
|
16
|
-
|
17
|
-
arg_opt '-C', '--repo-path', 'Caminho do repositório local' \
|
18
|
-
|
15
|
+
desc 'Realiza push de repositórios grandes (Que falham com "pack exceeds maximum ' \
|
16
|
+
'allowed size")'
|
17
|
+
arg_opt '-C', '--repo-path', 'Caminho do repositório local ' \
|
18
|
+
"[default: #{DEFAULT_REPO_PATH}]."
|
19
19
|
arg_opt '-r', '--remote', "Nome do remoto [default: #{DEFAULT_REMOTE}]."
|
20
20
|
pos_arg :source_ref
|
21
21
|
pos_arg :target_ref
|
@@ -1,12 +1,12 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require 'avm/
|
3
|
+
require 'avm/git/runners/base'
|
4
4
|
require 'avmtrf1/tools/core_ext'
|
5
5
|
|
6
6
|
module Avmtrf1
|
7
7
|
module Tools
|
8
8
|
class Runner
|
9
|
-
class Git < ::Avm::
|
9
|
+
class Git < ::Avm::Git::Runners::Base
|
10
10
|
require_sub __FILE__
|
11
11
|
end
|
12
12
|
end
|
@@ -8,7 +8,9 @@ module Avmtrf1
|
|
8
8
|
class Runner
|
9
9
|
class Msgraph
|
10
10
|
class JoinedTeams
|
11
|
-
|
11
|
+
LIST_COLUMNS = %w[id display_name].freeze
|
12
|
+
|
13
|
+
runner_with :help, :output_list do
|
12
14
|
desc 'Lista as próprias equipes no MS Teams.'
|
13
15
|
end
|
14
16
|
|
@@ -17,12 +19,16 @@ module Avmtrf1
|
|
17
19
|
run_output
|
18
20
|
end
|
19
21
|
|
20
|
-
|
22
|
+
def list_columns
|
23
|
+
LIST_COLUMNS
|
24
|
+
end
|
21
25
|
|
22
|
-
def
|
23
|
-
teams
|
26
|
+
def list_rows
|
27
|
+
teams
|
24
28
|
end
|
25
29
|
|
30
|
+
private
|
31
|
+
|
26
32
|
def teams_uncached
|
27
33
|
api.root_entity.joined_teams.sort_by { |t| [t.display_name, t.id] }
|
28
34
|
end
|
@@ -28,7 +28,7 @@ module Avmtrf1
|
|
28
28
|
infov 'Response status', response.status
|
29
29
|
infov 'Response body class', response.body_data.class
|
30
30
|
infov 'Response body', '*'
|
31
|
-
out response.body_data.to_yaml + "\n"
|
31
|
+
out response.body_data.to_yaml + "\n" # rubocop:disable Style/StringConcatenation
|
32
32
|
end
|
33
33
|
|
34
34
|
def request_uncached
|
@@ -0,0 +1,48 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'avmtrf1/tools/core_ext'
|
4
|
+
require 'avmtrf1/tools/msgraph/error'
|
5
|
+
|
6
|
+
module Avmtrf1
|
7
|
+
module Tools
|
8
|
+
class Runner
|
9
|
+
class Msgraph
|
10
|
+
class Team
|
11
|
+
class Member
|
12
|
+
class Add
|
13
|
+
runner_with :help, :output_item
|
14
|
+
|
15
|
+
def run
|
16
|
+
start_banner
|
17
|
+
add_member
|
18
|
+
run_output
|
19
|
+
fatal_error error.code if error.present?
|
20
|
+
end
|
21
|
+
|
22
|
+
private
|
23
|
+
|
24
|
+
attr_accessor :error, :result_data
|
25
|
+
|
26
|
+
def add_member
|
27
|
+
self.error = nil
|
28
|
+
self.result_data = team.member_add(member_id)
|
29
|
+
rescue ::Avmtrf1::Tools::Msgraph::Error => e
|
30
|
+
self.error = e
|
31
|
+
self.result_data = error.data
|
32
|
+
end
|
33
|
+
|
34
|
+
def start_banner
|
35
|
+
infov 'Team', team.id
|
36
|
+
infov 'Member ID', member_id
|
37
|
+
end
|
38
|
+
|
39
|
+
def item_hash
|
40
|
+
result_data
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|