avm-tools 0.123.0 → 0.124.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
  SHA256:
3
- metadata.gz: 96767c8dbc616d4e1166263ebe047b23bc3eb1cae43fd65c855a947a5917d95c
4
- data.tar.gz: 6448c5cf800a4570db21975f553963f8099e20d32ba53e7f98b164ff0feeadcf
3
+ metadata.gz: '08cbe8be7452f80405bfbc8fe71f64bc84b797af3399ee4d35c1d218065f7a98'
4
+ data.tar.gz: ae959f3f8c6c7e70da1c3dd4d425d8cda2fe73b27a8bd806b4bf24e7db424b53
5
5
  SHA512:
6
- metadata.gz: 4dfc6dfac366d17373285126d681067cf6143ce92030fb938ebf0c8bc8d7841daa4c032fe95344a8041b341d73df074fa62fb2c55c55ce4b3d6ec988c79e51cb
7
- data.tar.gz: 7d5625ba838dd89125fed9d6b0e0c3d2ba8e833537c618410c1b102313374f95bd11361fcfa2f043d43d760a75375b43211ddc29c9a40444ee498feeeaf0c241
6
+ metadata.gz: ef1e039ba2a5ff3be49286b37fb1d17b15561960d53458d55c011ecaec3e80bed22fd88caa5be6a8b5ba2ff09a1f60cddce412710f6aa44f64909c07ec4ce5d4
7
+ data.tar.gz: b560513dcf791a0bec5287054e3f4c18e5c71c3099b1b4f2d1617f8dd742cccfe6802a0c6547b46799bf8570b0aa498dab40dbaf299f26f6fa6b26cb74094cde
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module Tools
5
- VERSION = '0.123.0'
5
+ VERSION = '0.124.0'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: avm-tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.123.0
4
+ version: 0.124.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Esquilo Azul Company
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-07-22 00:00:00.000000000 Z
11
+ date: 2022-07-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aranha-parsers
@@ -377,7 +377,6 @@ files:
377
377
  - lib/avm/tools/runner/config/load_path.rb
378
378
  - lib/avm/tools/runner/eac_asciidoctor_base0.rb
379
379
  - lib/avm/tools/runner/eac_redmine_base0.rb
380
- - lib/avm/tools/runner/eac_redmine_base0/dev_docker.rb
381
380
  - lib/avm/tools/runner/eac_redmine_base0/docker.rb
382
381
  - lib/avm/tools/runner/eac_redmine_base0/project_rename.rb
383
382
  - lib/avm/tools/runner/eac_webapp_base0.rb
@@ -552,28 +551,6 @@ files:
552
551
  - sub/avm-git/spec/lib/avm/git/scms/git_subrepo_spec.rb
553
552
  - sub/avm-git/spec/rubocop_spec.rb
554
553
  - sub/avm-git/spec/spec_helper.rb
555
- - sub/eac_docker/Gemfile
556
- - sub/eac_docker/eac_docker.gemspec
557
- - sub/eac_docker/lib/eac_docker.rb
558
- - sub/eac_docker/lib/eac_docker/container.rb
559
- - sub/eac_docker/lib/eac_docker/debug.rb
560
- - sub/eac_docker/lib/eac_docker/executables.rb
561
- - sub/eac_docker/lib/eac_docker/images.rb
562
- - sub/eac_docker/lib/eac_docker/images/base.rb
563
- - sub/eac_docker/lib/eac_docker/images/coded.rb
564
- - sub/eac_docker/lib/eac_docker/images/named.rb
565
- - sub/eac_docker/lib/eac_docker/images/templatized.rb
566
- - sub/eac_docker/lib/eac_docker/registry.rb
567
- - sub/eac_docker/lib/eac_docker/rspec.rb
568
- - sub/eac_docker/lib/eac_docker/rspec/setup.rb
569
- - sub/eac_docker/lib/eac_docker/version.rb
570
- - sub/eac_docker/spec/lib/eac_docker/executables_spec.rb
571
- - sub/eac_docker/spec/lib/eac_docker/images/coded_spec.rb
572
- - sub/eac_docker/spec/lib/eac_docker/images/coded_spec_files/image1/Dockerfile
573
- - sub/eac_docker/spec/lib/eac_docker/images/templatized_spec.rb
574
- - sub/eac_docker/spec/lib/eac_docker/images/templatized_spec_files/stub_docker_image/Dockerfile
575
- - sub/eac_docker/spec/rubocop_spec.rb
576
- - sub/eac_docker/spec/spec_helper.rb
577
554
  - sub/eac_git/Gemfile
578
555
  - sub/eac_git/eac_git.gemspec
579
556
  - sub/eac_git/lib/eac_git.rb
@@ -1,17 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'avm/docker/runner'
4
-
5
- module Avm
6
- module Tools
7
- class Runner
8
- class EacRedmineBase0 < ::Avm::EacRailsBase1::Runner
9
- class DevDocker < ::Avm::Docker::Runner
10
- def docker_image
11
- ::Avm::EacUbuntuBase0::DockerImage
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- source 'https://rubygems.org'
4
-
5
- gemspec
@@ -1,19 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- $LOAD_PATH.push File.expand_path('lib', __dir__)
4
-
5
- require 'eac_docker/version'
6
-
7
- Gem::Specification.new do |s|
8
- s.name = 'eac_docker'
9
- s.version = EacDocker::VERSION
10
- s.authors = ['Put here the authors']
11
- s.summary = 'Put here de description.'
12
-
13
- s.files = Dir['{lib}/**/*']
14
-
15
- s.add_dependency 'eac_ruby_utils', '~> 0.74'
16
- s.add_dependency 'eac_templates', '~> 0.1'
17
-
18
- s.add_development_dependency 'eac_ruby_gem_support', '~> 0.3', '>= 0.3.3'
19
- end
@@ -1,78 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/core_ext'
4
-
5
- module EacDocker
6
- class Container
7
- enable_immutable
8
- immutable_accessor :interactive, :temporary, :tty, type: :boolean
9
- immutable_accessor :env, type: :hash
10
- immutable_accessor :capability, :command_arg, :volume, type: :array
11
- attr_reader :id
12
- common_constructor :image
13
-
14
- def immutable_constructor_args
15
- [image]
16
- end
17
-
18
- alias immutable_volume volume
19
-
20
- def hostname
21
- ::EacDocker::Executables.docker.command(
22
- 'inspect', '--format={{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}',
23
- id
24
- ).execute!.strip
25
- end
26
-
27
- def on_detached
28
- command = ::EacDocker::Executables.docker.command(*(%w[run --detach] + run_command_args))
29
- self.id = command.execute!.strip
30
- begin
31
- yield(self)
32
- ensure
33
- stop
34
- end
35
- end
36
-
37
- def volume(left_part, right_part = null)
38
- immutable_volume(right_part.if_present(left_part) { |v| "#{left_part}:#{v}" })
39
- end
40
-
41
- def run_command
42
- ::EacDocker::Executables.docker.command('run', *run_command_args)
43
- end
44
-
45
- def run_command_args
46
- run_command_boolean_args + run_command_capabilities_args + run_command_envs_args +
47
- run_command_volumes_args + [image.provide.id] + command_args
48
- end
49
-
50
- def stop
51
- ::EacDocker::Executables.docker.command('stop', id).execute!
52
- end
53
-
54
- private
55
-
56
- attr_writer :id
57
-
58
- def run_command_boolean_args
59
- r = []
60
- r << '--interactive' if interactive?
61
- r << '--tty' if tty?
62
- r << '--rm' if temporary?
63
- r
64
- end
65
-
66
- def run_command_capabilities_args
67
- capabilities.flat_map { |capability| ['--cap-add', capability] }
68
- end
69
-
70
- def run_command_volumes_args
71
- volumes.flat_map { |volume| ['--volume', volume] }
72
- end
73
-
74
- def run_command_envs_args
75
- envs.flat_map { |name, value| ['--env', "#{name}=#{value}"] }
76
- end
77
- end
78
- end
@@ -1,15 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/boolean'
4
-
5
- module EacDocker
6
- module Debug
7
- class << self
8
- ENABLE_ENVVAR = 'EAC_DOCKER_DEBUG'
9
-
10
- def enabled?
11
- ::EacRubyUtils::Boolean.parse(ENV[ENABLE_ENVVAR])
12
- end
13
- end
14
- end
15
- end
@@ -1,18 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/core_ext'
4
- require 'eac_ruby_utils/envs'
5
-
6
- module EacDocker
7
- module Executables
8
- class << self
9
- def env
10
- ::EacRubyUtils::Envs.local
11
- end
12
-
13
- def docker
14
- @docker ||= env.executable('docker', '--version')
15
- end
16
- end
17
- end
18
- end
@@ -1,14 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/core_ext'
4
- require 'eac_docker/container'
5
-
6
- module EacDocker
7
- module Images
8
- class Base
9
- def container
10
- ::EacDocker::Container.new(self)
11
- end
12
- end
13
- end
14
- end
@@ -1,43 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_docker/debug'
4
- require 'eac_docker/executables'
5
- require 'eac_docker/images/base'
6
- require 'eac_ruby_utils/core_ext'
7
-
8
- module EacDocker
9
- module Images
10
- class Coded < ::EacDocker::Images::Base
11
- enable_simple_cache
12
- enable_immutable
13
- immutable_accessor :tag
14
- common_constructor :path do
15
- self.path = path.to_pathname
16
- end
17
-
18
- def immutable_constructor_args
19
- [path]
20
- end
21
-
22
- def provide
23
- id
24
- self
25
- end
26
-
27
- private
28
-
29
- def id_uncached
30
- if ::EacDocker::Debug.enabled?
31
- ::EacDocker::Executables.docker.command(*build_args.excluding('--quiet')).system!
32
- end
33
- ::EacDocker::Executables.docker.command(*build_args).execute!.strip
34
- end
35
-
36
- def build_args
37
- args = %w[build --quiet]
38
- args += ['--tag', tag] if tag.present?
39
- args + [path.to_path]
40
- end
41
- end
42
- end
43
- end
@@ -1,30 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_docker/executables'
4
- require 'eac_docker/images/base'
5
- require 'eac_ruby_utils/core_ext'
6
-
7
- module EacDocker
8
- module Images
9
- class Named < ::EacDocker::Images::Base
10
- common_constructor :source_tag
11
-
12
- def id
13
- source_tag
14
- end
15
-
16
- def provide
17
- provide_command.execute!
18
- self
19
- end
20
-
21
- def provide_command
22
- ::EacDocker::Executables.docker.command(*docker_provide_args)
23
- end
24
-
25
- def docker_provide_args
26
- ['pull', source_tag]
27
- end
28
- end
29
- end
30
- end
@@ -1,41 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_docker/images/base'
4
- require 'eac_docker/images/coded'
5
- require 'eac_ruby_utils/core_ext'
6
- require 'eac_ruby_utils/fs/temp'
7
- require 'eac_templates/patches/object/template'
8
-
9
- module EacDocker
10
- module Images
11
- class Templatized < ::EacDocker::Images::Base
12
- enable_immutable
13
- immutable_accessor :tag
14
- attr_reader :provide_dir
15
-
16
- def id
17
- tag
18
- end
19
-
20
- def provide
21
- ::EacRubyUtils::Fs::Temp.on_directory do |provide_dir|
22
- begin
23
- self.provide_dir = provide_dir
24
- template.apply(self, provide_dir)
25
- coded_image(provide_dir).tag(tag).provide
26
- ensure
27
- self.provide_dir = nil
28
- end
29
- end
30
- end
31
-
32
- def coded_image(provide_dir)
33
- ::EacDocker::Images::Coded.new(provide_dir)
34
- end
35
-
36
- private
37
-
38
- attr_writer :provide_dir
39
- end
40
- end
41
- end
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/core_ext'
4
-
5
- module EacDocker
6
- module Images
7
- require_sub __FILE__
8
- end
9
- end
@@ -1,17 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/core_ext'
4
-
5
- module EacDocker
6
- class Registry
7
- common_constructor :name
8
-
9
- def to_s
10
- name
11
- end
12
-
13
- def sub(suffix)
14
- self.class.new("#{name}#{suffix}")
15
- end
16
- end
17
- end
@@ -1,17 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_docker/executables'
4
-
5
- module EacDocker
6
- module Rspec
7
- module Setup
8
- def self.extended(obj)
9
- obj.setup_conditional_docker_executable
10
- end
11
-
12
- def setup_conditional_docker_executable
13
- conditional(:docker) { ::EacDocker::Executables.docker.validate }
14
- end
15
- end
16
- end
17
- end
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/core_ext'
4
-
5
- module EacDocker
6
- module Rspec
7
- require_sub __FILE__
8
- end
9
- end
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacDocker
4
- VERSION = '0.4.1'
5
- end
@@ -1,7 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/core_ext'
4
-
5
- module EacDocker
6
- require_sub __FILE__
7
- end
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_docker/executables'
4
-
5
- RSpec.describe(::EacDocker::Executables, docker: true) do
6
- it 'output version' do
7
- expect(described_class.docker.command('--version').execute!).to be_present
8
- end
9
- end
@@ -1,12 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_docker/images/coded'
4
-
5
- RSpec.describe(::EacDocker::Images::Coded, docker: true) do
6
- let(:fixtures_dir) { ::Pathname.new('coded_spec_files').expand_path(__dir__) }
7
- let(:instance) { described_class.new(fixtures_dir / 'image1') }
8
-
9
- describe '#provide' do
10
- it { expect { instance.provide }.not_to raise_error }
11
- end
12
- end
@@ -1,18 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_docker/images/templatized'
4
- require 'eac_templates/searcher'
5
-
6
- RSpec.describe(::EacDocker::Images::Templatized, docker: true) do
7
- let(:fixtures_dir) { ::Pathname.new('templatized_spec_files').expand_path(__dir__) }
8
- let(:instance) { StubDockerImage.new }
9
-
10
- before do
11
- ::EacTemplates::Searcher.default.included_paths << fixtures_dir
12
- stub_const('StubDockerImage', Class.new(described_class))
13
- end
14
-
15
- describe '#provide' do
16
- it { expect { instance.provide }.not_to raise_error }
17
- end
18
- end
@@ -1,3 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- ::EacRubyUtils::Rspec.default_setup.describe_rubocop
@@ -1,4 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/rspec/default_setup'
4
- ::EacRubyUtils::Rspec.default_setup_create(::File.expand_path('..', __dir__))