Skip to content
Snippets Groups Projects
This project is mirrored from https://github.com/metabase/metabase. Pull mirroring updated .
  1. Oct 27, 2021
    • Pawit Pornkitprasan's avatar
      Fix SSH tunnel with ED25519 keys (#18697) · 24975664
      Pawit Pornkitprasan authored
      `org.apache.sshd` requires `net.i2p.crypto/eddsa` dependency
      to work with ED25519 keys.
      
      This worked in 0.40 because `eddsa` was included as a transitive
      dependency of another unrelated dependency (`buddy`) but stopped
      working in 0.41 because the new version of `buddy` no longer depends
      on `eddsa`. Thus, we must explicitly include the dependency.
      
      To prevent this from breaking again, switched one of the test
      keys to an ED25519 key.
      24975664
  2. Feb 25, 2021
    • Jeff Evans's avatar
      Implement ssh tunnel reconnection (#14563) · b4d8e35a
      Jeff Evans authored
      * Implement ssh tunnel reconnection
      
      From the connection-with-timezone method of execute, check whether an ssh tunnel that should be open actually is not, and if so, mark the entire pool as invalid (thereby forcing the connection code to rebuild the source and open a new tunnel)
      
      Fixing the create-pool! function so that the relevant ssh tunnel entries are kept (in addition to the :datasource)
      
      Adding test in ssh-test namespace, which will test that the tunnel is reestablished (for now, running with Postgres driver)
      
      * Responding to PR feedback from Dan
      
      * Fixing test by adding AcceptAllForwardingFilter forwardingFilter to the mock password server instance
      
      * Change with-driver to test-driver
      
      * Add ssh tunnel reconnect test that can run against H2
      
      * Implement ssh tunnel reconnection
      
      From the connection-with-timezone method of execute, check whether an ssh tunnel that should be open actually is not, and if so, mark the entire pool as invalid (thereby forcing the connection code to rebuild the source and open a new tunnel)
      
      Fixing the create-pool! function so that the relevant ssh tunnel entries are kept (in addition to the :datasource)
      
      Adding test in ssh-test namespace, which will test that the tunnel is reestablished (for now, running with Postgres driver)
      
      * Responding to PR feedback from Dan
      
      * Fixing test by adding AcceptAllForwardingFilter forwardingFilter to the mock password server instance
      
      * Rebase again to fix merge conflict
      
      * Change test-driver to with-driver in hopes of making CodeCov finally happy
      
      * Adding new multimethod to ssh namespace, called incorporate-ssh-tunnel-details, for accounting for the
      
      Implementing incorporate-ssh-tunnel-details for h2 so update the URI string (:db key) to point to the tunnel entry point
      
      Pulled logic for :sql-jdbc implementation of connection-with-timezone out to a new fn, so it can be called elsewhere
      
      Updating H2 reconnection test imn light of the changes above
      
      Added "!" suffix to name of include-ssh-tunnel to reflect the fact that it does modify global state
      
      * Fixing NPE in incorporate-ssh-tunnel-details implementation for :h2
      
      Moving multimethod declaration for incorporate-ssh-tunnel-details to driver namespace
      
      * Fix :h2 implementation again
      
      * Remove another errant extra line :(
      
      * Rebase onto master
      
      * Inline the private helper fn back into connection-with-timezone
      
      * Remove dead code
      b4d8e35a
  3. May 26, 2020
Loading