capistrano / sshkit

A toolkit for deploying code and assets to servers in a repeatable, testable, reliable way.
MIT License
1.13k stars 253 forks source link

sshkit broken with net-ssh 7.2.2 #531

Closed jasonperrone closed 3 months ago

jasonperrone commented 3 months ago

Please see https://github.com/net-ssh/net-ssh/issues/943.

net-ssh 7.2.2 removes its requires to 'base64'. As a result, any attempt to use sshkit after upgrading net-ssh to 7.2.2 results in: SSHKit::Runner::ExecuteError: Exception while executing as deploy@cstage: uninitialized constant SSHKit::Backend::Netssh::KnownHostsKeys::Base64 (SSHKit::Runner::ExecuteError)

mattbrictson commented 3 months ago

@jasonperrone thanks for the report! An easy fix will be to add require "base64", but this alone may trigger warnings on Ruby 3.3. To address those, I believe we will also need to add base64 as a dependency to sshkit's gemspec. Hopefully that won't cause any issues with older versions of Ruby (sshkit supports all the way back to 2.0).

I'll look into this today.

jasonperrone commented 3 months ago

Thanks @mattbrictson !

mattbrictson commented 3 months ago

@jasonperrone this is fixed and released in sshkit 1.22.1.

jasonperrone commented 3 months ago

Awesome, thanks Matt.