mirror of
https://github.com/puppetlabs/vmpooler.git
synced 2026-01-26 10:08:40 -05:00
Merge pull request #388 from mattkirby/alias_bug_fix
Correctly handle multiple pools of same alias in ondemand checkout
This commit is contained in:
commit
8da96e1af7
1 changed files with 17 additions and 5 deletions
|
|
@ -986,7 +986,12 @@ module Vmpooler
|
||||||
result['ready'] = true
|
result['ready'] = true
|
||||||
Parsing.get_platform_pool_count(request_hash['requested']) do |platform_alias, pool, _count|
|
Parsing.get_platform_pool_count(request_hash['requested']) do |platform_alias, pool, _count|
|
||||||
instances = backend.smembers("vmpooler__#{request_id}__#{platform_alias}__#{pool}")
|
instances = backend.smembers("vmpooler__#{request_id}__#{platform_alias}__#{pool}")
|
||||||
result[platform_alias] = { 'hostname': instances }
|
|
||||||
|
if result.key?(platform_alias)
|
||||||
|
result[platform_alias][:hostname] = result[platform_alias][:hostname] + instances
|
||||||
|
else
|
||||||
|
result[platform_alias] = { 'hostname': instances }
|
||||||
|
end
|
||||||
end
|
end
|
||||||
result['domain'] = config['domain'] if config['domain']
|
result['domain'] = config['domain'] if config['domain']
|
||||||
status 200
|
status 200
|
||||||
|
|
@ -999,10 +1004,17 @@ module Vmpooler
|
||||||
else
|
else
|
||||||
Parsing.get_platform_pool_count(request_hash['requested']) do |platform_alias, pool, count|
|
Parsing.get_platform_pool_count(request_hash['requested']) do |platform_alias, pool, count|
|
||||||
instance_count = backend.scard("vmpooler__#{request_id}__#{platform_alias}__#{pool}")
|
instance_count = backend.scard("vmpooler__#{request_id}__#{platform_alias}__#{pool}")
|
||||||
result[platform_alias] = {
|
instances_pending = count.to_i - instance_count.to_i
|
||||||
'ready': instance_count.to_s,
|
|
||||||
'pending': (count.to_i - instance_count.to_i).to_s
|
if result.key?(platform_alias) && result[platform_alias].key?(:ready)
|
||||||
}
|
result[platform_alias][:ready] = (result[platform_alias][:ready].to_i + instance_count).to_s
|
||||||
|
result[platform_alias][:pending] = (result[platform_alias][:pending].to_i + instances_pending).to_s
|
||||||
|
else
|
||||||
|
result[platform_alias] = {
|
||||||
|
'ready': instance_count.to_s,
|
||||||
|
'pending': instances_pending.to_s
|
||||||
|
}
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue