eac_docker 0.5.0 → 0.7.0

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: 44781e778b6ec594cfc5896aeb6de24eec915d944895158821bfc8afa3fefdb5
4
- data.tar.gz: a524731e448ac6b311d180fc71b5d1f1bdb9c64cb734bf23e9d28282dbc7a441
3
+ metadata.gz: a2bfc4fbb5832ccace8646d3f6e335afdc3ff0aeef1714fe685f009ccd30de5e
4
+ data.tar.gz: b8f473a82aa4d4203a2e85512dcc341b46b1cf5723bcba7944313d32df383e38
5
5
  SHA512:
6
- metadata.gz: d61d6c7fc22d9424c351a88282a6565f4bb14cdf901b698db96f5f3f8f67edc7eda15bd10092688befa6993242f758a6adc356e92c5fdce7367889aca68ca90b
7
- data.tar.gz: b1571040a56f3064741e13957568e21da9a158b413aeaf47e5797a8e6c27d8e877a5b4e22875d486c4c1268cb69a0e57b1d3b714d7f101ade908ce480fcaaa61
6
+ metadata.gz: 39d11933a19d1b3aaf6dbc1eda26c20ceab38c59c32805185dea6c5ba372a2c5e8c1433308f8317558c17fabb2d8520efbb696c4e7dca97565d3eca424855056
7
+ data.tar.gz: 3891f16c72eb4b8cbdd10c05a23952e9cabb3e896ae0505f5feb8e6414823c9153151748f9ec64443d571b70939fb33e822721dbfaee09f4708375d54f57cacb
@@ -24,6 +24,11 @@ module EacDocker
24
24
  ).execute!.strip
25
25
  end
26
26
 
27
+ # @return [String]
28
+ def logs
29
+ ::EacDocker::Executables.docker.command('logs', id).execute!
30
+ end
31
+
27
32
  def on_detached
28
33
  command = ::EacDocker::Executables.docker.command(*(%w[run --detach] + run_command_args))
29
34
  self.id = command.execute!.strip
@@ -35,8 +35,12 @@ module EacDocker
35
35
 
36
36
  protected
37
37
 
38
+ def variables_source
39
+ self
40
+ end
41
+
38
42
  def write_in_provide_dir
39
- template.apply(self, provide_dir)
43
+ template.apply(variables_source, provide_dir)
40
44
  end
41
45
 
42
46
  private
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module EacDocker
6
+ module Rspec
7
+ class StubImage
8
+ include ::ActiveSupport::Callbacks
9
+ define_callbacks :on_container
10
+ common_constructor :image
11
+
12
+ def build_container
13
+ image.provide.container.temporary(true)
14
+ end
15
+
16
+ def container
17
+ raise 'internal container is blank' if internal_container.blank?
18
+
19
+ internal_container
20
+ end
21
+
22
+ def on_container(&block)
23
+ raise 'A container was already created' if internal_container.present?
24
+
25
+ build_container.on_detached do |container|
26
+ self.internal_container = container
27
+ begin
28
+ run_callbacks(:on_container, &block)
29
+ ensure
30
+ self.internal_container = nil
31
+ end
32
+ end
33
+ end
34
+
35
+ private
36
+
37
+ attr_accessor :internal_container
38
+ end
39
+ end
40
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacDocker
4
- VERSION = '0.5.0'
4
+ VERSION = '0.7.0'
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.5.0
4
+ version: 0.7.0
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: 2022-10-09 00:00:00.000000000 Z
11
+ date: 2023-03-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: eac_ruby_utils
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.104'
19
+ version: '0.112'
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.104'
26
+ version: '0.112'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: eac_templates
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -76,6 +76,7 @@ files:
76
76
  - lib/eac_docker/registry.rb
77
77
  - lib/eac_docker/rspec.rb
78
78
  - lib/eac_docker/rspec/setup.rb
79
+ - lib/eac_docker/rspec/stub_image.rb
79
80
  - lib/eac_docker/version.rb
80
81
  homepage:
81
82
  licenses: []