mirror of
https://github.com/puppetlabs/vmpooler.git
synced 2026-01-26 01:58:41 -05:00
Convert Times to strings when being added to redis.
This commit is contained in:
parent
30820ec115
commit
46156fd85f
7 changed files with 26 additions and 21 deletions
18
Gemfile.lock
18
Gemfile.lock
|
|
@ -29,7 +29,6 @@ GEM
|
|||
ast (2.4.2)
|
||||
bindata (2.4.15)
|
||||
builder (3.2.4)
|
||||
byebug (11.1.3)
|
||||
climate_control (1.2.0)
|
||||
coderay (1.1.3)
|
||||
concurrent-ruby (1.2.2)
|
||||
|
|
@ -41,9 +40,11 @@ GEM
|
|||
faraday-net_http (>= 2.0, < 3.1)
|
||||
ruby2_keywords (>= 0.0.4)
|
||||
faraday-net_http (3.0.2)
|
||||
ffi (1.15.5-java)
|
||||
google-cloud-env (1.6.0)
|
||||
faraday (>= 0.17.3, < 3.0)
|
||||
json (2.6.3)
|
||||
json (2.6.3-java)
|
||||
language_server-protocol (3.17.0.3)
|
||||
method_source (1.0.0)
|
||||
mock_redis (0.36.0)
|
||||
|
|
@ -52,6 +53,7 @@ GEM
|
|||
ruby2_keywords (~> 0.0.1)
|
||||
net-ldap (0.18.0)
|
||||
nio4r (2.5.9)
|
||||
nio4r (2.5.9-java)
|
||||
opentelemetry-api (1.2.1)
|
||||
opentelemetry-common (0.19.7)
|
||||
opentelemetry-api (~> 1.0)
|
||||
|
|
@ -99,12 +101,16 @@ GEM
|
|||
pry (0.14.2)
|
||||
coderay (~> 1.1)
|
||||
method_source (~> 1.0)
|
||||
pry-byebug (3.10.1)
|
||||
byebug (~> 11.0)
|
||||
pry (>= 0.13, < 0.15)
|
||||
pry (0.14.2-java)
|
||||
coderay (~> 1.1)
|
||||
method_source (~> 1.0)
|
||||
spoon (~> 0.0)
|
||||
puma (6.3.0)
|
||||
nio4r (~> 2.0)
|
||||
puma (6.3.0-java)
|
||||
nio4r (~> 2.0)
|
||||
racc (1.7.1)
|
||||
racc (1.7.1-java)
|
||||
rack (2.2.8)
|
||||
rack-protection (3.1.0)
|
||||
rack (~> 2.2, >= 2.2.4)
|
||||
|
|
@ -159,6 +165,8 @@ GEM
|
|||
tilt (~> 2.0)
|
||||
spicy-proton (2.1.15)
|
||||
bindata (~> 2.3)
|
||||
spoon (0.0.6)
|
||||
ffi
|
||||
statsd-ruby (1.5.0)
|
||||
thor (1.2.2)
|
||||
thrift (0.18.1)
|
||||
|
|
@ -169,13 +177,13 @@ GEM
|
|||
rspec (~> 3)
|
||||
|
||||
PLATFORMS
|
||||
universal-java-11
|
||||
x86_64-darwin-22
|
||||
|
||||
DEPENDENCIES
|
||||
climate_control (>= 0.2.0)
|
||||
mock_redis (>= 0.17.0)
|
||||
pry
|
||||
pry-byebug
|
||||
rack-test (>= 0.6)
|
||||
rspec (>= 3.2)
|
||||
rubocop (~> 1.54.2)
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ module Vmpooler
|
|||
# Dependencies for tracing
|
||||
require 'opentelemetry-instrumentation-concurrent_ruby'
|
||||
require 'opentelemetry-instrumentation-http_client'
|
||||
# require 'opentelemetry-instrumentation-redis'
|
||||
require 'opentelemetry-instrumentation-redis'
|
||||
require 'opentelemetry-instrumentation-sinatra'
|
||||
require 'opentelemetry-sdk'
|
||||
require 'opentelemetry/exporter/jaeger'
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ module Vmpooler
|
|||
def validate_token(backend)
|
||||
tracer.in_span("Vmpooler::API::Helpers.#{__method__}") do
|
||||
if valid_token?(backend)
|
||||
backend.hset("vmpooler__token__#{request.env['HTTP_X_AUTH_TOKEN']}", 'last', Time.now)
|
||||
backend.hset("vmpooler__token__#{request.env['HTTP_X_AUTH_TOKEN']}", 'last', Time.now.to_s)
|
||||
|
||||
return true
|
||||
end
|
||||
|
|
|
|||
|
|
@ -189,8 +189,8 @@ module Vmpooler
|
|||
span.set_attribute('enduser.id', user)
|
||||
has_token_result = has_token?
|
||||
backend.sadd("vmpooler__migrating__#{template}", vm)
|
||||
backend.hset("vmpooler__active__#{template}", vm, Time.now)
|
||||
backend.hset("vmpooler__vm__#{vm}", 'checkout', Time.now)
|
||||
backend.hset("vmpooler__active__#{template}", vm, Time.now.to_s)
|
||||
backend.hset("vmpooler__vm__#{vm}", 'checkout', Time.now.to_s)
|
||||
|
||||
if Vmpooler::API.settings.config[:auth] and has_token_result
|
||||
backend.hset("vmpooler__vm__#{vm}", 'token:token', request.env['HTTP_X_AUTH_TOKEN'])
|
||||
|
|
@ -971,7 +971,7 @@ module Vmpooler
|
|||
result['token'] = o[rand(25)] + (0...31).map { o[rand(o.length)] }.join
|
||||
|
||||
backend.hset("vmpooler__token__#{result['token']}", 'user', @auth.username)
|
||||
backend.hset("vmpooler__token__#{result['token']}", 'created', Time.now)
|
||||
backend.hset("vmpooler__token__#{result['token']}", 'created', Time.now.to_s)
|
||||
span = OpenTelemetry::Trace.current_span
|
||||
span.set_attribute('enduser.id', @auth.username)
|
||||
|
||||
|
|
|
|||
|
|
@ -167,8 +167,8 @@ module Vmpooler
|
|||
pool_alias = redis.hget("vmpooler__vm__#{vm}", 'pool_alias')
|
||||
|
||||
redis.pipelined do |pipeline|
|
||||
pipeline.hset("vmpooler__active__#{pool}", vm, Time.now)
|
||||
pipeline.hset("vmpooler__vm__#{vm}", 'checkout', Time.now)
|
||||
pipeline.hset("vmpooler__active__#{pool}", vm, Time.now.to_s)
|
||||
pipeline.hset("vmpooler__vm__#{vm}", 'checkout', Time.now.to_s)
|
||||
if ondemandrequest_hash['token:token']
|
||||
pipeline.hset("vmpooler__vm__#{vm}", 'token:token', ondemandrequest_hash['token:token'])
|
||||
pipeline.hset("vmpooler__vm__#{vm}", 'token:user', ondemandrequest_hash['token:user'])
|
||||
|
|
@ -184,10 +184,10 @@ module Vmpooler
|
|||
|
||||
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)
|
||||
pipeline.hset("vmpooler__vm__#{vm}", 'ready', Time.now.to_s)
|
||||
|
||||
# last boot time is displayed in API, and used by alarming script
|
||||
pipeline.hset('vmpooler__lastboot', pool, Time.now)
|
||||
pipeline.hset('vmpooler__lastboot', pool, Time.now.to_s)
|
||||
end
|
||||
|
||||
$metrics.timing("time_to_ready_state.#{pool}", finish)
|
||||
|
|
@ -226,7 +226,7 @@ module Vmpooler
|
|||
last_checked_too_soon = ((Time.now - Time.parse(check_stamp)).to_i < $config[:config]['vm_checktime'] * 60) if check_stamp
|
||||
break if check_stamp && last_checked_too_soon
|
||||
|
||||
redis.hset("vmpooler__vm__#{vm}", 'check', Time.now)
|
||||
redis.hset("vmpooler__vm__#{vm}", 'check', Time.now.to_s)
|
||||
# Check if the hosts TTL has expired
|
||||
# if 'boottime' is nil, set bootime to beginning of unix epoch, forces TTL to be assumed expired
|
||||
boottime = redis.hget("vmpooler__vm__#{vm}", 'ready')
|
||||
|
|
@ -911,7 +911,7 @@ module Vmpooler
|
|||
end
|
||||
|
||||
if options[:pending_vm]
|
||||
pending_vm_count = redis.scard("vmpooler__pending__#{options[:poolname]}")
|
||||
pending_vm_count = redis.scard("vmpooler__pending__#{options[:poolname]}")
|
||||
break unless pending_vm_count == 0
|
||||
end
|
||||
|
||||
|
|
@ -1334,7 +1334,7 @@ module Vmpooler
|
|||
pending = redis.scard("vmpooler__pending__#{pool_name}")
|
||||
running = redis.scard("vmpooler__running__#{pool_name}")
|
||||
|
||||
total = pending.to_i + ready.to_i
|
||||
total = pending.to_i + ready.to_i
|
||||
|
||||
$metrics.gauge("ready.#{pool_name}", ready)
|
||||
$metrics.gauge("running.#{pool_name}", running)
|
||||
|
|
|
|||
|
|
@ -1,8 +1,6 @@
|
|||
require 'spec_helper'
|
||||
require 'time'
|
||||
require 'mock_redis'
|
||||
require 'pry'
|
||||
require 'pry-byebug'
|
||||
|
||||
# Custom RSpec :Matchers
|
||||
|
||||
|
|
|
|||
|
|
@ -41,7 +41,6 @@ Gem::Specification.new do |s|
|
|||
s.add_development_dependency 'climate_control', '>= 0.2.0'
|
||||
s.add_development_dependency 'mock_redis', '>= 0.17.0'
|
||||
s.add_development_dependency 'pry'
|
||||
s.add_development_dependency 'pry-byebug'
|
||||
s.add_development_dependency 'rack-test', '>= 0.6'
|
||||
s.add_development_dependency 'rspec', '>= 3.2'
|
||||
s.add_development_dependency 'rubocop', '~> 1.54.2'
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue