PromucFlow_constructor/app/server/appsmith-interfaces
Anna Hariprasad f3374bd5fd
feat: Added SSH Tunnel for Postgres (#35449)
@appsmithorg/contributor-support

Hi @rohan-arthur 

Fixes #30792 

[**Video
Demonstration**](https://drive.google.com/file/d/1IOGlTsPVgeBNOpq3vydO01lrcN10S8ZS/view?usp=sharing)

**What's in this pr :**

- Added connection mode option for SSH Tunnel.
- Added SSH Host, Port, SSH Username and SSH key fields.
- Added Validation logic for SSH fields.
- Added SSH connection logic.
- Added three test cases for SSH connection.

**Screenshots :**

![image](https://github.com/user-attachments/assets/8332a0f7-f184-401d-acea-b46aa07fe759)

![image](https://github.com/user-attachments/assets/37f8b372-5532-4133-8e3e-f41d5ad6e91f)

![image](https://github.com/user-attachments/assets/eee5a119-70e5-4ddb-bf13-8316ab9b160b)

![image](https://github.com/user-attachments/assets/a3cb0d12-9255-4b2e-b2c8-00c98227ca39)

![image](https://github.com/user-attachments/assets/6acd9b7f-f16e-48e4-8dfc-996ef62d2262)

Please review this pr. Let me know if any changes required.





<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

## Summary by CodeRabbit

- **New Features**
- Introduced SSH tunneling support for PostgreSQL connections, allowing
users to configure SSH settings for enhanced security.
- Added a new "Connection method" option in the configuration, enabling
selection between "Standard" and "SSH tunnel" connections, with relevant
fields for SSH details.

- **Bug Fixes**
- Improved error handling by adding specific error messages for missing
SSH configuration parameters, providing clearer feedback to users.
- Updated error messages for authentication issues to include missing
passwords.

- **Tests**
- Enhanced test coverage with new unit tests for validating the
configuration of PostgreSQL data sources, particularly for SSH
connections.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-08-29 11:09:08 +01:00
..
src feat: Added SSH Tunnel for Postgres (#35449) 2024-08-29 11:09:08 +01:00
pom.xml chore: Make core encrypt/decrypt methods statically available (#34117) 2024-06-12 12:38:25 +05:30