Fix tests for changes

This commit is contained in:
kirby@puppetlabs.com 2020-04-30 12:22:31 -07:00
parent 90e09bfe1c
commit 2b96d7e476
10 changed files with 268 additions and 189 deletions

View file

@ -103,13 +103,26 @@ module Vmpooler
count_selection(selection)
end
def fetch_single_vm(template)
template_backends = [template]
aliases = get_template_aliases(template)
aliases = Vmpooler::API.settings.config[:alias]
if aliases
template_backends += aliases
weighted_pools = get_pool_weights(template_backends)
template_backends += aliases[template] if aliases[template].is_a?(Array)
template_backends << aliases[template] if aliases[template].is_a?(String)
pool_index = pool_index(pools)
weighted_pools = {}
template_backends.each do |t|
next unless pool_index.key? t
index = pool_index[t]
clone_target = pools[index]['clone_target'] || config['clone_target']
next unless config.key?('backend_weight')
weight = config['backend_weight'][clone_target]
if weight
weighted_pools[t] = weight
end
end
if weighted_pools.count == template_backends.count
pickup = Pickup.new(weighted_pools)

View file

@ -2,7 +2,6 @@
require 'vmpooler/providers'
require 'spicy-proton'
require 'redis'
module Vmpooler
class PoolManager
@ -453,10 +452,11 @@ module Vmpooler
redis.multi
redis.hget("vmpooler__vm__#{vm}", 'checkout')
redis.hget("vmpooler__vm__#{vm}", 'tag:jenkins_build_url')
redis.hget("vmpooler__vm__#{vm}", 'token:user') || 'unauthenticated'
redis.hget("vmpooler__vm__#{vm}", 'token:user')
redis.hget("vmpooler__vm__#{vm}", 'template')
checkout, jenkins_build_url, user, poolname = redis.exec
return if checkout.nil?
user ||= 'unauthenticated'
unless jenkins_build_url
user = user.gsub('.', '_')
@ -491,7 +491,8 @@ module Vmpooler
$metrics.increment(metric_parts.join('.'))
rescue StandardError => e
logger.log('d', "[!] [#{poolname}] failed while evaluating usage labels on '#{vm}' with an error: #{e}")
$logger.log('d', "[!] [#{poolname}] failed while evaluating usage labels on '#{vm}' with an error: #{e}")
raise
end
def component_to_test(match, labels_string)
@ -1040,7 +1041,7 @@ module Vmpooler
redis.scard("vmpooler__ready__#{pool['name']}")
redis.scard("vmpooler__pending__#{pool['name']}")
ready, pending = redis.exec
total = pending.to_i + total.to_i
total = pending.to_i + ready.to_i
return if total.nil?
return if total == 0