landrush 0.7.0 → 0.7.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -13,26 +13,31 @@ module Landrush
13
13
  `uname`.chomp == 'Darwin'
14
14
  end
15
15
 
16
+ def self.config_dir
17
+ @config_dir ||= Pathname('/etc/resolver')
18
+ end
19
+
16
20
  def self.config_file
17
- @config_file ||= Pathname('/etc/resolver/vagrant.dev')
21
+ config_dir.join('vagrant.dev')
18
22
  end
19
23
 
20
24
  def self.contents_match?
21
25
  config_file.exist? && File.read(config_file) == desired_contents
22
26
  end
23
27
 
24
- def self.write_config
28
+ def self.write_config(opts)
25
29
  puts "Mometarily using sudo to put the host config in place..."
30
+ sudo = opts.fetch(:sudo, 'sudo')
31
+ system "#{sudo} mkdir #{config_dir}" unless config_dir.directory?
26
32
  Tempfile.open('vagrant_landrush_host_config') do |f|
27
33
  f.write(desired_contents)
28
34
  f.close
29
- sudo = config_file.parent.writable? ? '' : 'sudo'
30
35
  system "#{sudo} cp #{f.path} #{config_file}"
31
36
  system "#{sudo} chmod 644 #{config_file}"
32
37
  end
33
38
  end
34
39
 
35
- def self.ensure_config_exists
40
+ def self.ensure_config_exists(opts={})
36
41
  unless osx?
37
42
  puts "Not an OSX machine, so skipping host DNS resolver config."
38
43
  return
@@ -42,7 +47,7 @@ module Landrush
42
47
  puts "Host DNS resolver config looks good."
43
48
  else
44
49
  puts "Need to configure the host."
45
- write_config
50
+ write_config(opts)
46
51
  end
47
52
  end
48
53
 
@@ -1,3 +1,3 @@
1
1
  module Landrush
2
- VERSION = "0.7.0"
2
+ VERSION = "0.7.1"
3
3
  end
@@ -6,7 +6,7 @@ module Landrush
6
6
  it 'writes a resolver config on the host if one is not already there' do
7
7
  ResolverConfig.config_file.exist?.must_equal false
8
8
  hush {
9
- ResolverConfig.ensure_config_exists
9
+ ResolverConfig.ensure_config_exists(sudo: '')
10
10
  }
11
11
  ResolverConfig.config_file.exist?.must_equal true
12
12
  ResolverConfig.config_file.read.must_equal <<-EOF.gsub(/^ +/, '')
@@ -14,7 +14,9 @@ module Landrush
14
14
  nameserver 127.0.0.1
15
15
  port 10053
16
16
  EOF
17
- end
17
+ end
18
+
19
+
18
20
  end
19
21
  end
20
22
  end
@@ -1,17 +1,17 @@
1
1
  module FakeResolverConfigHooks
2
2
  def setup
3
3
  super
4
- @test_resolver_config = Pathname('/tmp/vagrant_landrush_test_resolver_config')
4
+ @test_resolver_config_dir = Pathname('/tmp/landrush_fake_resolver')
5
5
  Landrush::ResolverConfig.instance_variable_set(
6
- "@config_file",
7
- @test_resolver_config
6
+ "@config_dir",
7
+ @test_resolver_config_dir
8
8
  )
9
9
  end
10
10
 
11
11
  def teardown
12
12
  super
13
- if @test_resolver_config.exist?
14
- @test_resolver_config.delete
13
+ if @test_resolver_config_dir.exist?
14
+ @test_resolver_config_dir.rmtree
15
15
  end
16
16
  end
17
17
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: landrush
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.7.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-11-05 00:00:00.000000000 Z
12
+ date: 2013-11-22 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rubydns