(maint) Update to jruby-9.4.1.0 and move socket timeout to new method.

This commit is contained in:
isaac-hammes 2023-03-02 12:02:42 -08:00
parent e8c3e2f8ba
commit cbec1d9d3a
5 changed files with 31 additions and 35 deletions

View file

@ -70,10 +70,10 @@ jobs:
prerelease: false prerelease: false
# This step should closely match what is used in `docker/Dockerfile` in vmpooler-deployment # This step should closely match what is used in `docker/Dockerfile` in vmpooler-deployment
- name: Install Ruby jruby-9.3.6.0 - name: Install Ruby jruby-9.4.1.0
uses: ruby/setup-ruby@v1 uses: ruby/setup-ruby@v1
with: with:
ruby-version: 'jruby-9.3.6.0' ruby-version: 'jruby-9.4.1.0'
- name: Build gem - name: Build gem
run: gem build *.gemspec run: gem build *.gemspec

View file

@ -18,8 +18,7 @@ jobs:
strategy: strategy:
matrix: matrix:
ruby-version: ruby-version:
- 'jruby-9.3.6.0' - 'jruby-9.4.1.0'
- 'jruby-9.4.0.0'
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- name: Set up Ruby - name: Set up Ruby
@ -35,8 +34,7 @@ jobs:
strategy: strategy:
matrix: matrix:
ruby-version: ruby-version:
- 'jruby-9.3.6.0' - 'jruby-9.4.1.0'
- 'jruby-9.4.0.0'
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- name: Set up Ruby - name: Set up Ruby

View file

@ -13,11 +13,11 @@ GEM
addressable (2.8.1) addressable (2.8.1)
public_suffix (>= 2.0.2, < 6.0) public_suffix (>= 2.0.2, < 6.0)
ast (2.4.2) ast (2.4.2)
bindata (2.4.14) bindata (2.4.15)
builder (3.2.4) builder (3.2.4)
climate_control (1.2.0) climate_control (1.2.0)
coderay (1.1.3) coderay (1.1.3)
concurrent-ruby (1.2.0) concurrent-ruby (1.2.2)
connection_pool (2.3.0) connection_pool (2.3.0)
declarative (0.0.20) declarative (0.0.20)
deep_merge (1.2.2) deep_merge (1.2.2)
@ -28,9 +28,9 @@ GEM
ruby2_keywords (>= 0.0.4) ruby2_keywords (>= 0.0.4)
faraday-net_http (3.0.2) faraday-net_http (3.0.2)
ffi (1.15.5-java) ffi (1.15.5-java)
google-apis-compute_v1 (0.60.0) google-apis-compute_v1 (0.62.0)
google-apis-core (>= 0.9.1, < 2.a) google-apis-core (>= 0.11.0, < 2.a)
google-apis-core (0.10.0) google-apis-core (0.11.0)
addressable (~> 2.5, >= 2.5.1) addressable (~> 2.5, >= 2.5.1)
googleauth (>= 0.16.2, < 2.a) googleauth (>= 0.16.2, < 2.a)
httpclient (>= 2.8.1, < 3.a) httpclient (>= 2.8.1, < 3.a)
@ -39,8 +39,8 @@ GEM
retriable (>= 2.0, < 4.a) retriable (>= 2.0, < 4.a)
rexml rexml
webrick webrick
google-apis-dns_v1 (0.29.0) google-apis-dns_v1 (0.31.0)
google-apis-core (>= 0.9.1, < 2.a) google-apis-core (>= 0.11.0, < 2.a)
google-cloud-core (1.6.0) google-cloud-core (1.6.0)
google-cloud-env (~> 1.0) google-cloud-env (~> 1.0)
google-cloud-errors (~> 1.0) google-cloud-errors (~> 1.0)
@ -51,7 +51,7 @@ GEM
zonefile (~> 1.04) zonefile (~> 1.04)
google-cloud-env (1.6.0) google-cloud-env (1.6.0)
faraday (>= 0.17.3, < 3.0) faraday (>= 0.17.3, < 3.0)
google-cloud-errors (1.3.0) google-cloud-errors (1.3.1)
googleauth (1.2.0) googleauth (1.2.0)
faraday (>= 0.17.3, < 3.a) faraday (>= 0.17.3, < 3.a)
jwt (>= 1.4, < 3.0) jwt (>= 1.4, < 3.0)
@ -60,7 +60,7 @@ GEM
os (>= 0.9, < 2.0) os (>= 0.9, < 2.0)
signet (>= 0.16, < 2.a) signet (>= 0.16, < 2.a)
httpclient (2.8.3) httpclient (2.8.3)
jwt (2.6.0) jwt (2.7.0)
memoist (0.16.2) memoist (0.16.2)
method_source (1.0.0) method_source (1.0.0)
mini_mime (1.1.2) mini_mime (1.1.2)
@ -110,7 +110,7 @@ GEM
opentelemetry-api (~> 1.0) opentelemetry-api (~> 1.0)
os (1.1.4) os (1.1.4)
parallel (1.22.1) parallel (1.22.1)
parser (3.2.0.0) parser (3.2.1.0)
ast (~> 2.4.1) ast (~> 2.4.1)
pickup (0.0.11) pickup (0.0.11)
prometheus-client (2.1.0) prometheus-client (2.1.0)
@ -128,8 +128,8 @@ GEM
rack (>= 1.3) rack (>= 1.3)
rainbow (3.1.1) rainbow (3.1.1)
rake (13.0.6) rake (13.0.6)
redis (4.8.0) redis (4.8.1)
regexp_parser (2.6.2) regexp_parser (2.7.0)
representable (3.2.0) representable (3.2.0)
declarative (< 0.1.0) declarative (< 0.1.0)
trailblazer-option (>= 0.1.1, < 0.2.0) trailblazer-option (>= 0.1.1, < 0.2.0)
@ -140,7 +140,7 @@ GEM
rspec-core (~> 3.12.0) rspec-core (~> 3.12.0)
rspec-expectations (~> 3.12.0) rspec-expectations (~> 3.12.0)
rspec-mocks (~> 3.12.0) rspec-mocks (~> 3.12.0)
rspec-core (3.12.0) rspec-core (3.12.1)
rspec-support (~> 3.12.0) rspec-support (~> 3.12.0)
rspec-expectations (3.12.2) rspec-expectations (3.12.2)
diff-lcs (>= 1.2.0, < 2.0) diff-lcs (>= 1.2.0, < 2.0)
@ -158,9 +158,9 @@ GEM
rubocop-ast (>= 1.0.1) rubocop-ast (>= 1.0.1)
ruby-progressbar (~> 1.7) ruby-progressbar (~> 1.7)
unicode-display_width (>= 1.4.0, < 2.0) unicode-display_width (>= 1.4.0, < 2.0)
rubocop-ast (1.24.1) rubocop-ast (1.27.0)
parser (>= 3.1.1.0) parser (>= 3.2.1.0)
ruby-progressbar (1.11.0) ruby-progressbar (1.12.0)
ruby2_keywords (0.0.5) ruby2_keywords (0.0.5)
signet (0.17.0) signet (0.17.0)
addressable (~> 2.8) addressable (~> 2.8)
@ -184,8 +184,8 @@ GEM
ffi ffi
statsd-ruby (1.5.0) statsd-ruby (1.5.0)
thor (1.2.1) thor (1.2.1)
thrift (0.17.0) thrift (0.18.1)
tilt (2.0.11) tilt (2.1.0)
trailblazer-option (0.1.2) trailblazer-option (0.1.2)
uber (0.1.0) uber (0.1.0)
unicode-display_width (1.8.0) unicode-display_width (1.8.0)

View file

@ -683,17 +683,15 @@ module Vmpooler
# This should supercede the open_socket method in the Pool Manager # This should supercede the open_socket method in the Pool Manager
def open_socket(host, domain = nil, timeout = 5, port = 22, &_block) def open_socket(host, domain = nil, timeout = 5, port = 22, &_block)
Timeout.timeout(timeout) do
target_host = host target_host = host
target_host = "#{host}.#{domain}" if domain target_host = "#{host}.#{domain}" if domain
sock = TCPSocket.new target_host, port sock = TCPSocket.new(target_host, port, connect_timeout: timeout)
begin begin
yield sock if block_given? yield sock if block_given?
ensure ensure
sock.close sock.close
end end
end end
end
# this is used because for one vm, with the same snapshot name there could be multiple snapshots, # this is used because for one vm, with the same snapshot name there could be multiple snapshots,
# one for each disk # one for each disk

View file

@ -3,5 +3,5 @@
# The container tag should closely match what is used in `docker/Dockerfile` in vmpooler-deployment # The container tag should closely match what is used in `docker/Dockerfile` in vmpooler-deployment
docker run -it --rm \ docker run -it --rm \
-v $(pwd):/app \ -v $(pwd):/app \
jruby:9.3.6-jdk \ jruby:9.4.1.0-jdk8 \
/bin/bash -c 'apt-get update -qq && apt-get install -y --no-install-recommends make git && cd /app && gem install bundler && bundle install --jobs 3 && bundle update; echo "LOCK_FILE_UPDATE_EXIT_CODE=$?"' /bin/bash -c 'apt-get update -qq && apt-get install -y --no-install-recommends git make netbase && cd /app && gem install bundler && bundle install --jobs 3 && bundle update; echo "LOCK_FILE_UPDATE_EXIT_CODE=$?"'