docker_compose_env_rails 0.1.2 → 0.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.tool-versions +1 -1
- data/.travis.yml +3 -3
- data/CHANGELOG.md +19 -1
- data/docker_compose_env.gemspec +1 -1
- data/lib/docker_compose_env/version.rb +1 -1
- data/lib/docker_compose_env.rb +12 -3
- metadata +8 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 94758a7e22d65d2c31190c3b337e068f56645d76c6d248c535d418d4f2eb120e
|
4
|
+
data.tar.gz: 6d7f80c97172860417420740d02e6d029d6905c92aca68bb75874159cf4a18b1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5cc1d2f468d9789d79ec6a137528225cac5dedd2cd2555acb7a0031c333982f90daaebf3dac3985f48b8c87b1091138eaa43b0cc9019c5d5cd330c0119102a37
|
7
|
+
data.tar.gz: 5c2ddf9e84462c50d15734674f16d56830aa1bc20228523bf61372caa7767358e648d673704ab720174c0c1049e978f08dfcc60c19e538c47e5497130092997b
|
data/.tool-versions
CHANGED
@@ -1 +1 @@
|
|
1
|
-
ruby 2.
|
1
|
+
ruby 2.7.2
|
data/.travis.yml
CHANGED
@@ -2,14 +2,14 @@ language: ruby
|
|
2
2
|
sudo: required
|
3
3
|
|
4
4
|
env:
|
5
|
-
- DOCKER_COMPOSE_VERSION=1.
|
5
|
+
- DOCKER_COMPOSE_VERSION=1.27.4
|
6
6
|
|
7
7
|
before_install:
|
8
8
|
- docker version
|
9
9
|
- docker-compose version
|
10
10
|
- sudo apt-get update
|
11
11
|
- sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce
|
12
|
-
- gem install bundler -v 1.
|
12
|
+
- gem install bundler -v 2.1.4
|
13
13
|
- sudo rm /usr/local/bin/docker-compose
|
14
14
|
- curl -L https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-`uname -s`-`uname -m` > docker-compose
|
15
15
|
- chmod +x docker-compose
|
@@ -18,7 +18,7 @@ before_install:
|
|
18
18
|
- docker-compose version
|
19
19
|
|
20
20
|
rvm:
|
21
|
-
- 2.
|
21
|
+
- 2.7.2
|
22
22
|
|
23
23
|
services:
|
24
24
|
- docker
|
data/CHANGELOG.md
CHANGED
@@ -5,6 +5,22 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
5
5
|
|
6
6
|
## [unreleased]
|
7
7
|
|
8
|
+
## [0.2.1] - 2020-12-03
|
9
|
+
|
10
|
+
### Changed
|
11
|
+
|
12
|
+
- Fix bug with Open3 not being required
|
13
|
+
|
14
|
+
## [0.2.0] - 2020-11-21
|
15
|
+
|
16
|
+
### Changed
|
17
|
+
|
18
|
+
- Update ruby for development to 2.7.2
|
19
|
+
- Bump rake version dependency for devlopment
|
20
|
+
- Update to latest Bundler gem version on Travis CI
|
21
|
+
- Use latest docker-compose version on Travis CI
|
22
|
+
- No longer show message on stdout if docker-compose command is not found
|
23
|
+
|
8
24
|
## [0.1.2] - 2019-08-26
|
9
25
|
|
10
26
|
### Added
|
@@ -27,7 +43,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
27
43
|
|
28
44
|
- Initial version
|
29
45
|
|
30
|
-
[unreleased]: https://github.com/CoffeeAndCode/docker_compose_env/compare/v0.1
|
46
|
+
[unreleased]: https://github.com/CoffeeAndCode/docker_compose_env/compare/v0.2.1...HEAD
|
47
|
+
[0.2.1]: https://github.com/CoffeeAndCode/docker_compose_env/compare/v0.2.0...v0.2.1
|
48
|
+
[0.2.0]: https://github.com/CoffeeAndCode/docker_compose_env/compare/v0.1.2...v0.2.0
|
31
49
|
[0.1.2]: https://github.com/CoffeeAndCode/docker_compose_env/compare/v0.1.1...v0.1.2
|
32
50
|
[0.1.1]: https://github.com/CoffeeAndCode/docker_compose_env/compare/v0.1.0...v0.1.1
|
33
51
|
[0.1.0]: https://github.com/CoffeeAndCode/docker_compose_env/releases/tag/v0.1.0
|
data/docker_compose_env.gemspec
CHANGED
@@ -25,7 +25,7 @@ Gem::Specification.new do |spec|
|
|
25
25
|
spec.require_paths = ['lib']
|
26
26
|
|
27
27
|
spec.add_development_dependency 'bundler', '~> 2.0'
|
28
|
-
spec.add_development_dependency 'rake', '~>
|
28
|
+
spec.add_development_dependency 'rake', '~> 13.0'
|
29
29
|
spec.add_development_dependency 'reek'
|
30
30
|
spec.add_development_dependency 'rubocop'
|
31
31
|
spec.add_development_dependency 'minitest', '~> 5.10'
|
data/lib/docker_compose_env.rb
CHANGED
@@ -1,19 +1,25 @@
|
|
1
1
|
require 'docker_compose_env/version'
|
2
|
+
require 'open3'
|
2
3
|
require 'yaml'
|
3
4
|
|
4
5
|
# The main module for DockerComposeEnv, this provides a single "easy mode"
|
5
6
|
# method for setting up the environment.
|
6
7
|
module DockerComposeEnv
|
7
|
-
def self.setup!(env: ENV, file: 'docker-compose.yml')
|
8
|
+
def self.setup!(env: ENV, file: 'docker-compose.yml', process_env: {})
|
8
9
|
config = YAML.safe_load(File.read(file))
|
9
10
|
|
10
11
|
config.fetch('services', {}).keys.each do |service_name|
|
11
12
|
(config['services'][service_name]['ports'] || []).each do |container_port|
|
13
|
+
compose_port_info = nil
|
14
|
+
|
12
15
|
if /(\d+)\/udp$/ =~ container_port
|
13
16
|
parsed_port = /(?<port>\d+)\/udp$/.match(container_port).named_captures['port']
|
14
17
|
|
15
18
|
command = "docker-compose --file=#{file} port --protocol=udp #{service_name} #{parsed_port}"
|
16
|
-
|
19
|
+
Open3.popen3(process_env, command) do |stdin, stdout, stderr, wait_thr|
|
20
|
+
compose_port_info = stdout.read
|
21
|
+
wait_thr.value
|
22
|
+
end
|
17
23
|
|
18
24
|
if (compose_port_info =~ /^0\.0\.0\.0\:\d+\s*$/) == 0
|
19
25
|
if env["#{service_name.upcase}_HOST"].nil?
|
@@ -26,7 +32,10 @@ module DockerComposeEnv
|
|
26
32
|
end
|
27
33
|
else
|
28
34
|
command = "docker-compose --file=#{file} port #{service_name} #{container_port}"
|
29
|
-
|
35
|
+
Open3.popen3(process_env, command) do |stdin, stdout, stderr, wait_thr|
|
36
|
+
compose_port_info = stdout.read
|
37
|
+
wait_thr.value
|
38
|
+
end
|
30
39
|
|
31
40
|
if (compose_port_info =~ /^0\.0\.0\.0\:\d+\s*$/) == 0
|
32
41
|
if env["#{service_name.upcase}_HOST"].nil?
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: docker_compose_env_rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jonathan Knapp
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-12-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: docker_compose_env
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.1
|
19
|
+
version: 0.2.1
|
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.1
|
26
|
+
version: 0.2.1
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: railties
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -69,7 +69,7 @@ homepage: https://github.com/CoffeeAndCode/docker_compose_env
|
|
69
69
|
licenses:
|
70
70
|
- MIT
|
71
71
|
metadata: {}
|
72
|
-
post_install_message:
|
72
|
+
post_install_message:
|
73
73
|
rdoc_options: []
|
74
74
|
require_paths:
|
75
75
|
- lib
|
@@ -84,8 +84,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
84
84
|
- !ruby/object:Gem::Version
|
85
85
|
version: '0'
|
86
86
|
requirements: []
|
87
|
-
rubygems_version: 3.
|
88
|
-
signing_key:
|
87
|
+
rubygems_version: 3.1.4
|
88
|
+
signing_key:
|
89
89
|
specification_version: 4
|
90
90
|
summary: Automate docker_compose_env in Rails.
|
91
91
|
test_files: []
|