eac_docker 0.3.0 → 0.4.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a9eb082fe14902231e67ff35d1426eaad20007bb523d6f513811fa7128c16bf3
4
- data.tar.gz: 6e5bcccde7dec4ebb998a74be830ccae873f0e2a3eb1c06ad00b8d513d842f9c
3
+ metadata.gz: 3252faa36247d0aea75bb7467a4d81eb9b1dd1849daac93582bd8a7bab3aad0e
4
+ data.tar.gz: b360f4d9e96066eff7a42eba93a4c9d628232b80ae698f112bc70da37378095a
5
5
  SHA512:
6
- metadata.gz: a3629e408ad5c962f3885009027cf8d95d6d645511124515fbc96a93b579655d769d64a1e7abbc26e385d0ee7260ed74ad2b02ebd1c901ef23dab290eadc2ead
7
- data.tar.gz: 62abc05ba3e95c6c6b60c41a5878320fb7ae835b1ff83b844361fe05b96d338c4d6d465d9e7026f5d056e6e24cc73e4a6a4d9ba8fdf8e55c653951fc3246128d
6
+ metadata.gz: eb75e2933f0a9ddb6b1d8b3a840a1f31e80111e45fd49a83c297cae3cafea45169b185d40ce83efea3868467148ab38a9e7651b9443e964ad061a22716096214
7
+ data.tar.gz: 2393e4ce5def550a9d30214bb4a041a5648684382c1e86d90a514ad9c493f5e4c62c1b782b0cc2a74d9dfe71527247282c6ac2ef683a0731a20cfe63668fe647
@@ -7,7 +7,7 @@ module EacDocker
7
7
  enable_immutable
8
8
  immutable_accessor :interactive, :temporary, :tty, type: :boolean
9
9
  immutable_accessor :env, type: :hash
10
- immutable_accessor :command_arg, :volume, type: :array
10
+ immutable_accessor :capability, :command_arg, :volume, type: :array
11
11
  attr_reader :id
12
12
  common_constructor :image
13
13
 
@@ -34,7 +34,7 @@ module EacDocker
34
34
  end
35
35
  end
36
36
 
37
- def volume(left_part, right_part = null)
37
+ def volume(left_part, right_part = nil)
38
38
  immutable_volume(right_part.if_present(left_part) { |v| "#{left_part}:#{v}" })
39
39
  end
40
40
 
@@ -43,8 +43,9 @@ module EacDocker
43
43
  end
44
44
 
45
45
  def run_command_args
46
- run_command_boolean_args + run_command_envs_args + run_command_volumes_args + [image.id] +
47
- command_args
46
+ %w[boolean capabilities envs volumes]
47
+ .inject([]) { |a, e| a + send("run_command_#{e}_args") } +
48
+ [image.provide.id] + command_args
48
49
  end
49
50
 
50
51
  def stop
@@ -63,6 +64,10 @@ module EacDocker
63
64
  r
64
65
  end
65
66
 
67
+ def run_command_capabilities_args
68
+ capabilities.flat_map { |capability| ['--cap-add', capability] }
69
+ end
70
+
66
71
  def run_command_volumes_args
67
72
  volumes.flat_map { |volume| ['--volume', volume] }
68
73
  end
@@ -13,6 +13,10 @@ module EacDocker
13
13
  immutable_accessor :tag
14
14
  attr_reader :provide_dir
15
15
 
16
+ def id
17
+ tag
18
+ end
19
+
16
20
  def provide
17
21
  ::EacRubyUtils::Fs::Temp.on_directory do |provide_dir|
18
22
  begin
@@ -0,0 +1,17 @@
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,17 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'eac_ruby_utils/rspec/conditional'
4
- require 'eac_docker/executables'
3
+ require 'eac_ruby_utils/core_ext'
5
4
 
6
5
  module EacDocker
7
6
  module Rspec
8
- class << self
9
- def configure
10
- ::EacRubyUtils::Rspec::Conditional.default.add(:docker) do
11
- ::EacDocker::Executables.docker.validate
12
- end
13
- RSpec.configure { |config| ::EacRubyUtils::Rspec::Conditional.default.configure(config) }
14
- end
15
- end
7
+ require_sub __FILE__
16
8
  end
17
9
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacDocker
4
- VERSION = '0.3.0'
4
+ VERSION = '0.4.2'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eac_docker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Put here the authors
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-07-07 00:00:00.000000000 Z
11
+ date: 2022-07-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: eac_ruby_utils
@@ -16,48 +16,48 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.69'
20
- - - ">="
21
- - !ruby/object:Gem::Version
22
- version: 0.69.1
19
+ version: '0.96'
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
24
  - - "~>"
28
25
  - !ruby/object:Gem::Version
29
- version: '0.69'
30
- - - ">="
31
- - !ruby/object:Gem::Version
32
- version: 0.69.1
26
+ version: '0.96'
33
27
  - !ruby/object:Gem::Dependency
34
28
  name: eac_templates
35
29
  requirement: !ruby/object:Gem::Requirement
36
30
  requirements:
37
31
  - - "~>"
38
32
  - !ruby/object:Gem::Version
39
- version: '0.1'
33
+ version: '0.3'
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: 0.3.1
40
37
  type: :runtime
41
38
  prerelease: false
42
39
  version_requirements: !ruby/object:Gem::Requirement
43
40
  requirements:
44
41
  - - "~>"
45
42
  - !ruby/object:Gem::Version
46
- version: '0.1'
43
+ version: '0.3'
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: 0.3.1
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: eac_ruby_gem_support
49
49
  requirement: !ruby/object:Gem::Requirement
50
50
  requirements:
51
51
  - - "~>"
52
52
  - !ruby/object:Gem::Version
53
- version: '0.2'
53
+ version: 0.5.1
54
54
  type: :development
55
55
  prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
57
57
  requirements:
58
58
  - - "~>"
59
59
  - !ruby/object:Gem::Version
60
- version: '0.2'
60
+ version: 0.5.1
61
61
  description:
62
62
  email:
63
63
  executables: []
@@ -75,6 +75,7 @@ files:
75
75
  - lib/eac_docker/images/templatized.rb
76
76
  - lib/eac_docker/registry.rb
77
77
  - lib/eac_docker/rspec.rb
78
+ - lib/eac_docker/rspec/setup.rb
78
79
  - lib/eac_docker/version.rb
79
80
  homepage:
80
81
  licenses: []
@@ -94,7 +95,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
94
95
  - !ruby/object:Gem::Version
95
96
  version: '0'
96
97
  requirements: []
97
- rubygems_version: 3.0.9
98
+ rubygems_version: 3.1.6
98
99
  signing_key:
99
100
  specification_version: 4
100
101
  summary: Put here de description.