Class: Kitchen::Driver::VmpoolStores::FileBaseStore
- Inherits:
-
BaseStore
- Object
- BaseStore
- Kitchen::Driver::VmpoolStores::FileBaseStore
show all
- Includes:
- Logging
- Defined in:
- lib/kitchen/driver/vmpool_stores/file_base_store.rb
Instance Attribute Summary collapse
Instance Method Summary
collapse
Methods inherited from BaseStore
#initialize
Instance Attribute Details
#pool_data(refresh = false) ⇒ Object
Returns the value of attribute pool_data
10
11
12
|
# File 'lib/kitchen/driver/vmpool_stores/file_base_store.rb', line 10
def pool_data
@pool_data
end
|
#pool_file ⇒ Object
Returns the value of attribute pool_file
10
11
12
|
# File 'lib/kitchen/driver/vmpool_stores/file_base_store.rb', line 10
def pool_file
@pool_file
end
|
Instance Method Details
#cleanup(pool_member:, pool_name:, reuse_instances:) {|pool_member, used_status| ... } ⇒ Object
25
26
27
28
29
30
31
32
33
34
35
|
# File 'lib/kitchen/driver/vmpool_stores/file_base_store.rb', line 25
def cleanup(pool_member:, pool_name:, reuse_instances:)
used_status = 'garbage'
if reuse_instances
mark_unused(pool_member, pool_name)
used_status = 'unused'
else
used_hosts(pool_name).delete(pool_member)
add_to_garbage(pool_member, pool_name)
end
yield(pool_member, used_status) if block_given?
end
|
#create ⇒ Object
47
48
49
50
|
# File 'lib/kitchen/driver/vmpool_stores/file_base_store.rb', line 47
def create
write_content(base_content)
read
end
|
#read ⇒ Object
52
53
54
|
# File 'lib/kitchen/driver/vmpool_stores/file_base_store.rb', line 52
def read
read_content
end
|
#reread ⇒ Object
56
57
58
|
# File 'lib/kitchen/driver/vmpool_stores/file_base_store.rb', line 56
def reread
pool_data(true)
end
|
#save ⇒ Object
60
61
62
63
|
# File 'lib/kitchen/driver/vmpool_stores/file_base_store.rb', line 60
def save
write_content
read
end
|
#take_pool_member(pool_name) ⇒ String
mark them used so nobody else can use it
15
16
17
18
19
20
|
# File 'lib/kitchen/driver/vmpool_stores/file_base_store.rb', line 15
def take_pool_member(pool_name)
member = pool_hosts(pool_name).sample
raise Kitchen::Driver::PoolMemberNotFound.new("No pool members exist for #{pool_name}, please create some pool members") unless member
mark_used(member, pool_name)
member
end
|
#update(content = nil) ⇒ Object
42
43
44
45
|
# File 'lib/kitchen/driver/vmpool_stores/file_base_store.rb', line 42
def update(content = nil)
write_content(content)
read
end
|