jamie-vagrant 0.2.2 → 0.2.3

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.
@@ -17,7 +17,7 @@ Gem::Specification.new do |gem|
17
17
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
18
18
  gem.require_paths = ["lib"]
19
19
 
20
- gem.add_dependency 'jamie'
20
+ gem.add_dependency 'jamie', '~> 0.1.0.alpha19'
21
21
  gem.add_dependency 'vagrant', '~> 1.0.5'
22
22
 
23
23
  gem.add_development_dependency 'cane'
@@ -29,31 +29,38 @@ module Jamie
29
29
 
30
30
  default_config 'memory', '256'
31
31
 
32
- def create(instance, state)
32
+ def create(state)
33
33
  # @todo Vagrantfile setup will be placed in any dependency hook
34
34
  # checks when feature is released
35
35
  vagrantfile = File.join(config['jamie_root'], "Vagrantfile")
36
36
  create_vagrantfile(vagrantfile) unless File.exists?(vagrantfile)
37
37
 
38
38
  state['hostname'] = instance.name
39
- run_command "vagrant up #{state['hostname']} --no-provision"
39
+ run "vagrant up #{state['hostname']} --no-provision"
40
+ info("Vagrant instance <#{state['hostname']}> created.")
40
41
  end
41
42
 
42
- def converge(instance, state)
43
- run_command "vagrant provision #{state['hostname']}"
43
+ def converge(state)
44
+ run "vagrant provision #{state['hostname']}"
44
45
  end
45
46
 
46
- def destroy(instance, state)
47
+ def destroy(state)
47
48
  return if state['hostname'].nil?
48
49
 
49
- run_command "vagrant destroy #{state['hostname']} -f"
50
+ run "vagrant destroy #{state['hostname']} -f"
51
+ info("Vagrant instance <#{state['hostname']}> destroyed.")
50
52
  state.delete('hostname')
51
53
  end
52
54
 
53
55
  protected
54
56
 
55
57
  def ssh(ssh_args, cmd)
56
- run_command %{vagrant ssh #{ssh_args.first} --command '#{cmd}'}
58
+ run %{vagrant ssh #{ssh_args.first} --command '#{cmd}'}
59
+ end
60
+
61
+ def run(cmd)
62
+ cmd = "echo #{cmd}" if config['dry_run']
63
+ run_command(cmd)
57
64
  end
58
65
 
59
66
  def create_vagrantfile(vagrantfile)
@@ -21,6 +21,6 @@ module Jamie
21
21
  module Driver
22
22
 
23
23
  # Version string for Vagrant Jamie driver
24
- VAGRANT_VERSION = "0.2.2"
24
+ VAGRANT_VERSION = "0.2.3"
25
25
  end
26
26
  end
@@ -39,6 +39,14 @@ module Jamie
39
39
  @config = Jamie::Config.new
40
40
  @config.yaml_file = ENV['JAMIE_YAML'] if ENV['JAMIE_YAML']
41
41
  end
42
+
43
+ # Override default implementation to prevent serializing the config
44
+ # instance variable, which may contain circular references.
45
+ #
46
+ # @return [Hash] an empty Hash
47
+ def instance_variables_hash
48
+ {}
49
+ end
42
50
  end
43
51
 
44
52
  # Defines all Vagrant virtual machines, one for each instance.
@@ -53,7 +61,7 @@ module Jamie
53
61
  private
54
62
 
55
63
  def self.define_vagrant_vm(config, instance)
56
- driver = instance.platform.driver
64
+ driver = instance.driver
57
65
 
58
66
  config.vm.define instance.name do |c|
59
67
  c.vm.box = driver['box']
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jamie-vagrant
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,24 +9,24 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-12-30 00:00:00.000000000 Z
12
+ date: 2013-01-03 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: jamie
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
- - - ! '>='
19
+ - - ~>
20
20
  - !ruby/object:Gem::Version
21
- version: '0'
21
+ version: 0.1.0.alpha19
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  none: false
26
26
  requirements:
27
- - - ! '>='
27
+ - - ~>
28
28
  - !ruby/object:Gem::Version
29
- version: '0'
29
+ version: 0.1.0.alpha19
30
30
  - !ruby/object:Gem::Dependency
31
31
  name: vagrant
32
32
  requirement: !ruby/object:Gem::Requirement
@@ -122,7 +122,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
122
122
  version: '0'
123
123
  segments:
124
124
  - 0
125
- hash: 287715437133563140
125
+ hash: -3764330397802881782
126
126
  required_rubygems_version: !ruby/object:Gem::Requirement
127
127
  none: false
128
128
  requirements:
@@ -131,7 +131,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
131
131
  version: '0'
132
132
  segments:
133
133
  - 0
134
- hash: 287715437133563140
134
+ hash: -3764330397802881782
135
135
  requirements: []
136
136
  rubyforge_project:
137
137
  rubygems_version: 1.8.24