chef-metal-lxc 0.1.1 → 0.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e51099a4d7f321b3ae716dfe44a06b0a5936a0aa
4
- data.tar.gz: 68f2eccc5af59f02ba3d509c8f254083a65e2acb
3
+ metadata.gz: 2ed7dfed2acc5f5c14b12786111cf062074f2165
4
+ data.tar.gz: c34889c04ef95bea3ae6b036a24a39bcd270b654
5
5
  SHA512:
6
- metadata.gz: 043eb415ad9ba38b14f6f6ca6bfb0b94e819785dffb5767cb70ecc25a99d64cbb88b66652bfc2cc873d048c52496e5129e6e95437479905479af72e2efd30830
7
- data.tar.gz: 914a6b0cf84a208bac0f170ea89698d2ac62f38314a464fa7749ee708113a084e88c8331e43d5f7f9f4ab7259f37e93cd1e7f030bc3014402265ac3d1174326b
6
+ metadata.gz: a93dab3facce1903bb30177604f07140881749e28f24668cc3e8f28de1c73f3a2b893b36ec7a3539a0de83c2286efa6247843bbdda0a29bad4476c72f2e4aa19
7
+ data.tar.gz: e717b1b724124d7e1d0c9e34cdb63b1b7bee0ebc7e9c2145395020134e23f6b1243215cd39346d0111d28600ca295849e16b4048fc708cc1d3b842ce7f40438a
@@ -26,7 +26,7 @@ module ChefMetalLXC
26
26
  # different from the original node object).
27
27
  #
28
28
  # ## Parameters
29
- # provider - the provider object that is calling this method.
29
+ # action_handler - the action_handler object that provides context.
30
30
  # node - node object (deserialized json) representing this machine. If
31
31
  # the node has a provisioner_options hash in it, these will be used
32
32
  # instead of options provided by the provisioner. TODO compare and
@@ -48,7 +48,7 @@ module ChefMetalLXC
48
48
  # -- provisioner_url: lxc:<lxc_path>
49
49
  # -- name: container name
50
50
  #
51
- def acquire_machine(provider, node)
51
+ def acquire_machine(action_handler, node)
52
52
  # TODO verify that the existing provisioner_url in the node is the same as ours
53
53
 
54
54
  # Set up the modified node data
@@ -61,7 +61,7 @@ module ChefMetalLXC
61
61
  # Create the container if it does not exist
62
62
  ct = LXC::Container.new(provisioner_output['name'], lxc_path)
63
63
  unless ct.defined?
64
- provider.converge_by "create lxc container #{provisioner_output['name']}" do
64
+ action_handler.perform_action "create lxc container #{provisioner_output['name']}" do
65
65
  #
66
66
  # Set config
67
67
  #
@@ -84,14 +84,14 @@ module ChefMetalLXC
84
84
 
85
85
  # Unfreeze the frozen
86
86
  if ct.state == :frozen
87
- provider.converge_by "unfreeze lxc container #{provisioner_output['name']} (state is #{ct.state})" do
87
+ action_handler.perform_action "unfreeze lxc container #{provisioner_output['name']} (state is #{ct.state})" do
88
88
  ct.unfreeze
89
89
  end
90
90
  end
91
91
 
92
92
  # Get stopped containers running
93
93
  unless ct.running?
94
- provider.converge_by "start lxc container #{provisioner_output['name']} (state is #{ct.state})" do
94
+ action_handler.perform_action "start lxc container #{provisioner_output['name']} (state is #{ct.state})" do
95
95
  # Have to shell out to lxc-start for now, ct.start holds server sockets open!
96
96
  lxc_start = "lxc-start -d -n #{Shellwords.escape(provisioner_output['name'])}"
97
97
  # TODO add ability to change options on start
@@ -118,26 +118,26 @@ module ChefMetalLXC
118
118
  machine_for(node)
119
119
  end
120
120
 
121
- def delete_machine(provider, node)
121
+ def delete_machine(action_handler, node)
122
122
  if node['normal'] && node['normal']['provisioner_output']
123
123
  provisioner_output = node['normal']['provisioner_output']
124
124
  ct = LXC::Container.new(provisioner_output['name'], lxc_path)
125
125
  if ct.defined?
126
- provider.converge_by "delete lxc container #{provisioner_output['name']}" do
126
+ action_handler.perform_action "delete lxc container #{provisioner_output['name']}" do
127
127
  ct.destroy
128
128
  end
129
129
  end
130
130
  end
131
- convergence_strategy_for(node).delete_chef_objects(provider, node)
131
+ convergence_strategy_for(node).delete_chef_objects(action_handler, node)
132
132
  end
133
133
 
134
- def stop_machine(provider, node)
134
+ def stop_machine(action_handler, node)
135
135
  provisioner_options = node['normal']['provisioner_options']
136
136
  if node['normal'] && node['normal']['provisioner_output']
137
137
  provisioner_output = node['normal']['provisioner_output']
138
138
  ct = LXC::Container.new(provisioner_output['name'], lxc_path)
139
139
  if ct.running?
140
- provider.converge_by "delete lxc container #{provisioner_output['name']}" do
140
+ action_handler.perform_action "delete lxc container #{provisioner_output['name']}" do
141
141
  ct.stop
142
142
  end
143
143
  end
@@ -1,3 +1,3 @@
1
1
  module ChefMetalLXC
2
- VERSION = '0.1.1'
2
+ VERSION = '0.2'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chef-metal-lxc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: '0.2'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ranjib Dey
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-29 00:00:00.000000000 Z
11
+ date: 2014-04-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: chef
@@ -28,16 +28,16 @@ dependencies:
28
28
  name: chef-metal
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '>='
31
+ - - ~>
32
32
  - !ruby/object:Gem::Version
33
- version: '0'
33
+ version: '0.5'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - '>='
38
+ - - ~>
39
39
  - !ruby/object:Gem::Version
40
- version: '0'
40
+ version: '0.5'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: ruby-lxc
43
43
  requirement: !ruby/object:Gem::Requirement