vagrant-hypconfigmgmt 0.0.4 → 0.0.5
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/README.md +1 -1
- data/lib/vagrant-hypconfigmgmt/command.rb +26 -3
- data/lib/vagrant-hypconfigmgmt/version.rb +1 -1
- data/spec/unit/command/configure_xdebug_spec.rb +35 -0
- data/spec/unit/command/ensure_settings_are_configured_spec.rb +4 -0
- data/spec/unit/command/get_xdebug_state_spec.rb +54 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fcdc33fece45adb733b862dbc4187237f4e174d4
|
4
|
+
data.tar.gz: c6fd87ee4876d7124d13a2f933174e3241152030
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5b51824b6737089497a1cb1d9047d48cb6e9917a74be2b6ae8440c55c8c47074654920ad57d17f2e7b8477a285d00e655885f83b0a990a08c1a0e28b3ecb349d
|
7
|
+
data.tar.gz: eb793c0fcc241b43dc41af702f92f7aea9bf883ce53179e68f09ec771993c09bd69cb8e16b6d3f47f081da84dad188836ec0bbf51a2ea70366f93b09543e2ee1
|
data/README.md
CHANGED
@@ -16,6 +16,9 @@ AVAILABLE_FIREWALL_STATES = [true, false]
|
|
16
16
|
DEFAULT_CGROUP_STATE = false
|
17
17
|
AVAILABLE_CGROUP_STATES = [true, false]
|
18
18
|
|
19
|
+
DEFAULT_XDEBUG_STATE = false
|
20
|
+
AVAILABLE_XDEBUG_STATES = [true, false]
|
21
|
+
|
19
22
|
# paths to local settings file
|
20
23
|
H_V_SETTINGS_FILE = "local.yml"
|
21
24
|
H_V_BASE_SETTINGS_FILE = ".local.base.yml"
|
@@ -150,7 +153,17 @@ module VagrantHypconfigmgmt
|
|
150
153
|
env[:ui].info(message)
|
151
154
|
return cgroup_state
|
152
155
|
end
|
153
|
-
|
156
|
+
|
157
|
+
|
158
|
+
def get_xdebug_state(env)
|
159
|
+
ask_message = "Do you want to install Xdebug? Enter true or false [default false]: "
|
160
|
+
xdebug_enabled = get_setting(env, AVAILABLE_XDEBUG_STATES, DEFAULT_XDEBUG_STATE, ask_message)
|
161
|
+
xdebug_state = xdebug_enabled == 'true' ? true : false
|
162
|
+
message = "Xdebug will be #{xdebug_state ? 'enabled' : 'disabled'}"
|
163
|
+
env[:ui].info(message)
|
164
|
+
return xdebug_state
|
165
|
+
end
|
166
|
+
|
154
167
|
|
155
168
|
def get_fs_type(env)
|
156
169
|
ask_message = "What filesystem type do you want to use? Options: nfs_guest, nfs, rsync, virtualbox [default #{DEFAULT_FS_TYPE}]: "
|
@@ -331,8 +344,17 @@ HEREDOC
|
|
331
344
|
AVAILABLE_CGROUP_STATES
|
332
345
|
) { get_cgroup_state(env) }
|
333
346
|
end
|
334
|
-
|
335
|
-
|
347
|
+
|
348
|
+
|
349
|
+
def configure_xdebug(env)
|
350
|
+
ensure_setting_exists('xdebug')
|
351
|
+
ensure_attribute_configured(
|
352
|
+
env, 'xdebug', 'state',
|
353
|
+
AVAILABLE_XDEBUG_STATES
|
354
|
+
) { get_xdebug_state(env) }
|
355
|
+
end
|
356
|
+
|
357
|
+
|
336
358
|
def configure_synced_folders(env)
|
337
359
|
ensure_setting_exists('fs')
|
338
360
|
ensure_fs_type_configured(env)
|
@@ -356,6 +378,7 @@ HEREDOC
|
|
356
378
|
configure_synced_folders(env)
|
357
379
|
configure_firewall(env)
|
358
380
|
configure_cgroup(env)
|
381
|
+
configure_xdebug(env)
|
359
382
|
configure_vagrant(env)
|
360
383
|
new_settings = retrieve_settings()
|
361
384
|
return new_settings.to_yaml != old_settings.to_yaml
|
@@ -0,0 +1,35 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
# vim: set fileencoding=utf-8
|
3
|
+
|
4
|
+
require 'spec_helper'
|
5
|
+
require "vagrant-hypconfigmgmt/command"
|
6
|
+
|
7
|
+
describe VagrantHypconfigmgmt::Command do
|
8
|
+
# create a fake app and env to pass into the VagrantHypconfigmgmt::Command constructor
|
9
|
+
let(:app) { }
|
10
|
+
let(:env) { }
|
11
|
+
|
12
|
+
# Call the method under test after every 'it'. Similar to setUp in Python TestCase
|
13
|
+
after do
|
14
|
+
subject.configure_xdebug(env)
|
15
|
+
end
|
16
|
+
|
17
|
+
# instantiate class of which a method is to be tested
|
18
|
+
subject { described_class.new(app, env) }
|
19
|
+
|
20
|
+
# the method that we are going to test
|
21
|
+
describe "#configure_xdebug" do
|
22
|
+
|
23
|
+
context "when env is passed" do
|
24
|
+
it "configures the settings for xdebug" do
|
25
|
+
# check the xdebug settings is ensured to exist in the configuration file
|
26
|
+
expect(subject).to receive(:ensure_setting_exists).with('xdebug')
|
27
|
+
# check the xdebug state is ensured to be configured
|
28
|
+
expect(subject).to receive(:ensure_attribute_configured).with(
|
29
|
+
env, 'xdebug', 'state', AVAILABLE_XDEBUG_STATES
|
30
|
+
)
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
@@ -45,6 +45,8 @@ describe VagrantHypconfigmgmt::Command do
|
|
45
45
|
expect(subject).to receive(:configure_firewall).with(env)
|
46
46
|
# check the memory management settings are configured
|
47
47
|
expect(subject).to receive(:configure_cgroup).with(env)
|
48
|
+
# check the Xdebug settings are configured
|
49
|
+
expect(subject).to receive(:configure_xdebug).with(env)
|
48
50
|
# check the vagrant settings are configured
|
49
51
|
expect(subject).to receive(:configure_vagrant).with(env)
|
50
52
|
# check true is returned when settings are updated
|
@@ -68,6 +70,8 @@ describe VagrantHypconfigmgmt::Command do
|
|
68
70
|
expect(subject).to receive(:configure_firewall).with(env)
|
69
71
|
# check the memory management settings are configured
|
70
72
|
expect(subject).to receive(:configure_cgroup).with(env)
|
73
|
+
# check the Xdebug settings are configured
|
74
|
+
expect(subject).to receive(:configure_xdebug).with(env)
|
71
75
|
# check the vagrant settings are configured
|
72
76
|
expect(subject).to receive(:configure_vagrant).with(env)
|
73
77
|
# check false is returned when settings are not updated
|
@@ -0,0 +1,54 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
# vim: set fileencoding=utf-8
|
3
|
+
|
4
|
+
require 'spec_helper'
|
5
|
+
require "vagrant-hypconfigmgmt/command"
|
6
|
+
|
7
|
+
describe VagrantHypconfigmgmt::Command do
|
8
|
+
# create a fake app and env to pass into the VagrantHypconfigmgmt::Command constructor
|
9
|
+
let(:app) { }
|
10
|
+
let(:env) { { :ui => ui } }
|
11
|
+
|
12
|
+
# pretend env contains the Vagrant ui element
|
13
|
+
let(:ui) do
|
14
|
+
double('ui').tap do |ui|
|
15
|
+
allow(ui).to receive(:info) { nil }
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
# instantiate class of which a method is to be tested
|
20
|
+
subject { described_class.new(app, env) }
|
21
|
+
|
22
|
+
# the method that we are going to test
|
23
|
+
describe "#get_xdebug_state" do
|
24
|
+
expected_message = "Do you want to install Xdebug? Enter true or false [default false]: "
|
25
|
+
|
26
|
+
context "when the state is enabled" do
|
27
|
+
it "it notifies the user that it will be enabled and returns the value" do
|
28
|
+
# check if the setting is prompted for and pretend it returns a "xdebug enabled" answer
|
29
|
+
expect(subject).to receive(:get_setting).with(
|
30
|
+
env, AVAILABLE_XDEBUG_STATES, DEFAULT_XDEBUG_STATE, expected_message
|
31
|
+
).and_return("true")
|
32
|
+
# check if the user is notified that the xdebug will be enabled
|
33
|
+
expect(ui).to receive(:info).once.with(/.*enabled.*/)
|
34
|
+
# check if the function returns true if the xdebug should be enabled
|
35
|
+
expect( subject.get_xdebug_state(env) ).to eq(true)
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
|
40
|
+
context "when the state is disabled" do
|
41
|
+
it "it notifies the user that it will be disabled and returns the value" do
|
42
|
+
# check if the setting is prompted for and pretend it returns a "xdebug disabled" answer
|
43
|
+
expect(subject).to receive(:get_setting).with(
|
44
|
+
env, AVAILABLE_XDEBUG_STATES, DEFAULT_XDEBUG_STATE, expected_message
|
45
|
+
).and_return("false")
|
46
|
+
# check if the user is notified that the xdebug will be disabled
|
47
|
+
expect(ui).to receive(:info).once.with(/.*disabled.*/)
|
48
|
+
# check if the function returns false if the xdebug should be disabled
|
49
|
+
expect( subject.get_xdebug_state(env) ).to eq(false)
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vagrant-hypconfigmgmt
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rick van de Loo
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-11-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -107,6 +107,7 @@ files:
|
|
107
107
|
- spec/unit/command/configure_synced_folders_spec.rb
|
108
108
|
- spec/unit/command/configure_vagrant_spec.rb
|
109
109
|
- spec/unit/command/configure_varnish_spec.rb
|
110
|
+
- spec/unit/command/configure_xdebug_spec.rb
|
110
111
|
- spec/unit/command/ensure_attribute_configured_spec.rb
|
111
112
|
- spec/unit/command/ensure_firewall_disabled_for_incompatible_fs_types_spec.rb
|
112
113
|
- spec/unit/command/ensure_fs_type_configured_spec.rb
|
@@ -123,6 +124,7 @@ files:
|
|
123
124
|
- spec/unit/command/get_php_version_spec.rb
|
124
125
|
- spec/unit/command/get_setting_spec.rb
|
125
126
|
- spec/unit/command/get_varnish_state_spec.rb
|
127
|
+
- spec/unit/command/get_xdebug_state_spec.rb
|
126
128
|
- spec/unit/command/inform_if_gatling_not_installed_spec.rb
|
127
129
|
- spec/unit/command/retrieve_settings_spec.rb
|
128
130
|
- spec/unit/command/update_settings_spec.rb
|