From 2ad9b8c549edd60ac2647cde3ba107ed4866b920 Mon Sep 17 00:00:00 2001 From: Samuel Beaulieu Date: Wed, 30 Mar 2022 09:01:25 -0500 Subject: [PATCH] (maint) Fix deprecation warning for redis ruby library The syntax for pipelined has changed and the old syntax will be removed in v5.0.0 Fixing the syntax now since the block syntax has been supported for a while now. --- lib/vmpooler/api/helpers.rb | 18 ++++---- lib/vmpooler/pool_manager.rb | 86 ++++++++++++++++++------------------ 2 files changed, 52 insertions(+), 52 deletions(-) diff --git a/lib/vmpooler/api/helpers.rb b/lib/vmpooler/api/helpers.rb index 0f216ab..60d1db3 100644 --- a/lib/vmpooler/api/helpers.rb +++ b/lib/vmpooler/api/helpers.rb @@ -147,12 +147,12 @@ module Vmpooler def export_tags(backend, hostname, tags) tracer.in_span("Vmpooler::API::Helpers.#{__method__}") do - backend.pipelined do + backend.pipelined do |pipeline| tags.each_pair do |tag, value| next if value.nil? or value.empty? - backend.hset("vmpooler__vm__#{hostname}", "tag:#{tag}", value) - backend.hset("vmpooler__tag__#{Date.today}", "#{hostname}:#{tag}", value) + pipeline.hset("vmpooler__vm__#{hostname}", "tag:#{tag}", value) + pipeline.hset("vmpooler__tag__#{Date.today}", "#{hostname}:#{tag}", value) end end end @@ -201,9 +201,9 @@ module Vmpooler tracer.in_span("Vmpooler::API::Helpers.#{__method__}") do # using pipelined is much faster than querying each of the pools and adding them # as we get the result. - res = backend.pipelined do + res = backend.pipelined do |pipeline| pools.each do |pool| - backend.scard(key + pool['name']) + pipeline.scard(key + pool['name']) end end res.inject(0) { |m, x| m + x }.to_i @@ -217,9 +217,9 @@ module Vmpooler # using pipelined is much faster than querying each of the pools and adding them # as we get the result. temp_hash = {} - res = backend.pipelined do + res = backend.pipelined do |pipeline| pools.each do |pool| - backend.scard(key + pool['name']) + pipeline.scard(key + pool['name']) end end pools.each_with_index do |pool, i| @@ -236,9 +236,9 @@ module Vmpooler # using pipelined is much faster than querying each of the pools and adding them # as we get the result. temp_hash = {} - res = backend.pipelined do + res = backend.pipelined do |pipeline| pools.each do |pool| - backend.hget(key, pool['name']) + pipeline.hget(key, pool['name']) end end pools.each_with_index do |pool, i| diff --git a/lib/vmpooler/pool_manager.rb b/lib/vmpooler/pool_manager.rb index 69c3a18..2ca99af 100644 --- a/lib/vmpooler/pool_manager.rb +++ b/lib/vmpooler/pool_manager.rb @@ -148,15 +148,15 @@ module Vmpooler end pool_alias = redis.hget("vmpooler__vm__#{vm}", 'pool_alias') - redis.pipelined do - redis.hset("vmpooler__active__#{pool}", vm, Time.now) - redis.hset("vmpooler__vm__#{vm}", 'checkout', Time.now) + redis.pipelined do |pipeline| + pipeline.hset("vmpooler__active__#{pool}", vm, Time.now) + pipeline.hset("vmpooler__vm__#{vm}", 'checkout', Time.now) if ondemandrequest_hash['token:token'] - redis.hset("vmpooler__vm__#{vm}", 'token:token', ondemandrequest_hash['token:token']) - redis.hset("vmpooler__vm__#{vm}", 'token:user', ondemandrequest_hash['token:user']) - redis.hset("vmpooler__vm__#{vm}", 'lifetime', $config[:config]['vm_lifetime_auth'].to_i) + pipeline.hset("vmpooler__vm__#{vm}", 'token:token', ondemandrequest_hash['token:token']) + pipeline.hset("vmpooler__vm__#{vm}", 'token:user', ondemandrequest_hash['token:user']) + pipeline.hset("vmpooler__vm__#{vm}", 'lifetime', $config[:config]['vm_lifetime_auth'].to_i) end - redis.sadd("vmpooler__#{request_id}__#{pool_alias}__#{pool}", vm) + pipeline.sadd("vmpooler__#{request_id}__#{pool_alias}__#{pool}", vm) end move_vm_queue(pool, vm, 'pending', 'running', redis) check_ondemand_request_ready(request_id, redis) @@ -164,12 +164,12 @@ module Vmpooler redis.smove("vmpooler__pending__#{pool}", "vmpooler__ready__#{pool}", vm) end - redis.pipelined do - redis.hset("vmpooler__boot__#{Date.today}", "#{pool}:#{vm}", finish) # maybe remove as this is never used by vmpooler itself? - redis.hset("vmpooler__vm__#{vm}", 'ready', Time.now) + redis.pipelined do |pipeline| + pipeline.hset("vmpooler__boot__#{Date.today}", "#{pool}:#{vm}", finish) # maybe remove as this is never used by vmpooler itself? + pipeline.hset("vmpooler__vm__#{vm}", 'ready', Time.now) # last boot time is displayed in API, and used by alarming script - redis.hset('vmpooler__lastboot', pool, Time.now) + pipeline.hset('vmpooler__lastboot', pool, Time.now) end $metrics.timing("time_to_ready_state.#{pool}", finish) @@ -418,9 +418,9 @@ module Vmpooler finish = format('%