ventriloquist 0.4.1 → 0.5.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 +4 -4
- data/.travis.yml +0 -4
- data/CHANGELOG.md +31 -0
- data/DEVELOPMENT.md +37 -0
- data/Gemfile +13 -13
- data/Gemfile.lock +48 -50
- data/LICENSE.txt +1 -1
- data/README.md +65 -114
- data/development/Vagrantfile +20 -55
- data/lib/ventriloquist/cap/platforms/debian/elixir_install.rb +23 -16
- data/lib/ventriloquist/cap/platforms/debian/erlang_install.rb +13 -10
- data/lib/ventriloquist/cap/platforms/debian/go_install.rb +18 -3
- data/lib/ventriloquist/cap/platforms/debian/phantomjs_install.rb +22 -4
- data/lib/ventriloquist/cap/platforms/debian/python.rb +2 -0
- data/lib/ventriloquist/cap/platforms/linux/nvm_install_nodejs.rb +2 -0
- data/lib/ventriloquist/cap/platforms/linux/rvm_install_ruby.rb +2 -0
- data/lib/ventriloquist/cap/services/debian/ventriloquist_containers_upstart.rb +1 -1
- data/lib/ventriloquist/cap/utils/debian/prepare_container_for_docker.rb +35 -0
- data/lib/ventriloquist/cap/utils/linux/download.rb +24 -10
- data/lib/ventriloquist/cap/utils.rb +5 -0
- data/lib/ventriloquist/config.rb +1 -1
- data/lib/ventriloquist/platforms/elixir.rb +7 -2
- data/lib/ventriloquist/platforms/erlang.rb +3 -0
- data/lib/ventriloquist/platforms/go.rb +7 -2
- data/lib/ventriloquist/platforms/nodejs.rb +9 -2
- data/lib/ventriloquist/platforms/phantomjs.rb +7 -2
- data/lib/ventriloquist/platforms/python.rb +9 -2
- data/lib/ventriloquist/platforms/ruby.rb +9 -2
- data/lib/ventriloquist/platforms_builder.rb +7 -2
- data/lib/ventriloquist/plugin.rb +0 -4
- data/lib/ventriloquist/provisioner.rb +10 -5
- data/lib/ventriloquist/service.rb +4 -5
- data/lib/ventriloquist/services/elastic_search.rb +1 -1
- data/lib/ventriloquist/services/mail_catcher.rb +1 -1
- data/lib/ventriloquist/services/memcached.rb +1 -1
- data/lib/ventriloquist/services/mysql.rb +1 -1
- data/lib/ventriloquist/services/postgresql.rb +1 -1
- data/lib/ventriloquist/services/redis.rb +2 -2
- data/lib/ventriloquist/services/rethink_db.rb +1 -5
- data/lib/ventriloquist/services_builder.rb +10 -7
- data/lib/ventriloquist/version.rb +1 -1
- data/services/base/Dockerfile +19 -11
- data/services/build-all.sh +11 -11
- data/services/elasticsearch/Dockerfile +4 -1
- data/services/mailcatcher/Dockerfile +11 -1
- data/services/memcached/Dockerfile +9 -4
- data/services/mysql/5.5/Dockerfile +1 -0
- data/services/mysql/5.6/Dockerfile +8 -4
- data/services/openjdk7/Dockerfile +6 -1
- data/services/postgresql/9.1/Dockerfile +8 -5
- data/services/postgresql/9.1/config/bin/prepare-postgres +2 -0
- data/services/postgresql/9.2/Dockerfile +7 -5
- data/services/postgresql/9.2/config/bin/prepare-postgres +2 -0
- data/services/postgresql/9.3/Dockerfile +5 -5
- data/services/postgresql/9.3/config/bin/prepare-postgres +2 -0
- data/services/redis/Dockerfile +7 -4
- data/services/rethinkdb/Dockerfile +8 -1
- data/spec/spec_helper.rb +7 -9
- data/spec/unit/platforms_builder_spec.rb +5 -9
- data/spec/unit/service_spec.rb +14 -16
- data/spec/unit/services_builder_spec.rb +10 -20
- data/ventriloquist.gemspec +0 -2
- metadata +11 -23
@@ -1,24 +1,22 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
|
-
require '
|
3
|
+
require Vagrant.source_root.join('plugins/provisioners/docker/client')
|
4
4
|
require 'ventriloquist/services_builder'
|
5
5
|
|
6
6
|
describe VagrantPlugins::Ventriloquist::ServicesBuilder do
|
7
7
|
Service = VagrantPlugins::Ventriloquist::Service
|
8
8
|
|
9
|
-
|
9
|
+
let(:docker_client) { instance_double(VagrantPlugins::Docker::Client, container_running?: false, run_container: false) }
|
10
10
|
|
11
|
-
|
12
|
-
|
13
|
-
let(:pg_cfg) { {image: 'user/pg', tag: '9.2'} }
|
11
|
+
let(:pg_cfg) { {image: 'user/pg-9.2'} }
|
14
12
|
let(:custom_mapping) { {'mysql' => custom_service} }
|
15
13
|
let(:custom_service) { Class.new(Service) }
|
16
14
|
let(:svcs_configs) { [
|
17
15
|
{pg: pg_cfg},
|
18
16
|
['some-service'],
|
19
|
-
'mysql
|
17
|
+
'mysql-1.2',
|
20
18
|
{name: {type: 'mysql'}},
|
21
|
-
{api_db: {vimage: 'mysql'}}
|
19
|
+
{api_db: {vimage: 'mysql-2.1'}}
|
22
20
|
] }
|
23
21
|
|
24
22
|
let(:services) { described_class.new(svcs_configs, custom_mapping).build(docker_client) }
|
@@ -29,8 +27,8 @@ describe VagrantPlugins::Ventriloquist::ServicesBuilder do
|
|
29
27
|
let(:vimage_ex) { services[4] }
|
30
28
|
|
31
29
|
it 'builds a list of service objects' do
|
32
|
-
expect(services).to
|
33
|
-
expect(services.all?{|s| s.is_a?(Service)}).to
|
30
|
+
expect(services.size).to eq(5)
|
31
|
+
expect(services.all?{|s| s.is_a?(Service)}).to be_truthy
|
34
32
|
end
|
35
33
|
|
36
34
|
it 'uses container name as type' do
|
@@ -49,24 +47,16 @@ describe VagrantPlugins::Ventriloquist::ServicesBuilder do
|
|
49
47
|
expect(pg.config).to eq(pg_cfg)
|
50
48
|
end
|
51
49
|
|
52
|
-
it 'extracts tag from image name' do
|
53
|
-
expect(mysql.config[:tag]).to eq('1.2')
|
54
|
-
end
|
55
|
-
|
56
|
-
it 'defaults tag to "latest"' do
|
57
|
-
expect(other.config[:tag]).to eq('latest')
|
58
|
-
end
|
59
|
-
|
60
50
|
it 'prepends "fgrehm/ventriloquist-" to image names if image config is not provided' do
|
61
|
-
expect(mysql.config[:image]).to eq('fgrehm/ventriloquist-mysql
|
51
|
+
expect(mysql.config[:image]).to eq('fgrehm/ventriloquist-mysql-1.2')
|
62
52
|
end
|
63
53
|
|
64
54
|
it 'expands vimage' do
|
65
|
-
expect(vimage_ex.config[:image]).to eq('fgrehm/ventriloquist-mysql
|
55
|
+
expect(vimage_ex.config[:image]).to eq('fgrehm/ventriloquist-mysql-2.1')
|
66
56
|
end
|
67
57
|
|
68
58
|
it 'sets the service name' do
|
69
59
|
expect(pg.name).to eq('pg')
|
70
|
-
expect(mysql.name).to eq('mysql')
|
60
|
+
expect(mysql.name).to eq('mysql-1.2')
|
71
61
|
end
|
72
62
|
end
|
data/ventriloquist.gemspec
CHANGED
metadata
CHANGED
@@ -1,29 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ventriloquist
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Fabio Rehm
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
12
|
-
dependencies:
|
13
|
-
- !ruby/object:Gem::Dependency
|
14
|
-
name: vocker
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - ~>
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: 0.4.1
|
20
|
-
type: :runtime
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - ~>
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: 0.4.1
|
11
|
+
date: 2014-04-07 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
27
13
|
description: Vagrant development environments made easy
|
28
14
|
email:
|
29
15
|
- fgrehm@gmail.com
|
@@ -31,10 +17,11 @@ executables: []
|
|
31
17
|
extensions: []
|
32
18
|
extra_rdoc_files: []
|
33
19
|
files:
|
34
|
-
- .gitignore
|
35
|
-
- .rspec
|
36
|
-
- .travis.yml
|
20
|
+
- ".gitignore"
|
21
|
+
- ".rspec"
|
22
|
+
- ".travis.yml"
|
37
23
|
- CHANGELOG.md
|
24
|
+
- DEVELOPMENT.md
|
38
25
|
- Gemfile
|
39
26
|
- Gemfile.lock
|
40
27
|
- Guardfile
|
@@ -68,6 +55,7 @@ files:
|
|
68
55
|
- lib/ventriloquist/cap/utils/debian/install_build_tools.rb
|
69
56
|
- lib/ventriloquist/cap/utils/debian/install_packages.rb
|
70
57
|
- lib/ventriloquist/cap/utils/debian/mercurial_install.rb
|
58
|
+
- lib/ventriloquist/cap/utils/debian/prepare_container_for_docker.rb
|
71
59
|
- lib/ventriloquist/cap/utils/linux/download.rb
|
72
60
|
- lib/ventriloquist/cap/utils/linux/make.rb
|
73
61
|
- lib/ventriloquist/cap/utils/linux/untar.rb
|
@@ -136,17 +124,17 @@ require_paths:
|
|
136
124
|
- lib
|
137
125
|
required_ruby_version: !ruby/object:Gem::Requirement
|
138
126
|
requirements:
|
139
|
-
- -
|
127
|
+
- - ">="
|
140
128
|
- !ruby/object:Gem::Version
|
141
129
|
version: '0'
|
142
130
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
143
131
|
requirements:
|
144
|
-
- -
|
132
|
+
- - ">="
|
145
133
|
- !ruby/object:Gem::Version
|
146
134
|
version: '0'
|
147
135
|
requirements: []
|
148
136
|
rubyforge_project:
|
149
|
-
rubygems_version: 2.
|
137
|
+
rubygems_version: 2.2.2
|
150
138
|
signing_key:
|
151
139
|
specification_version: 4
|
152
140
|
summary: Vagrant development environments made easy
|