PromucFlow_constructor/app/client
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
..
.husky ci: Add pre push hook to not allow ee changes in ce (#35276) 2024-07-30 12:11:27 +05:30
.yarn
cypress feat: Added SSH Tunnel for Postgres (#35449) 2024-08-29 11:09:08 +01:00
docker/templates chore: Fix bugs in logic for capturing web vitals for client (#32371) 2024-04-09 14:25:46 +05:30
generators chore: custom widget (#28926) 2023-12-28 12:16:28 +05:30
packages chore: Input morphing (#35845) 2024-08-27 12:15:45 +05:30
public chore: Upgrade TinyMCE (#35399) 2024-08-08 20:08:09 +05:30
src chore: adding telemetry for klona (#35918) 2024-08-29 12:35:48 +05:30
test chore: Cleanup Redux Actions file (#35720) 2024-08-22 09:49:30 +05:30
typings
.babelrc chore: rename old ADS package (#35517) 2024-08-08 15:55:00 +03:00
.dockerignore
.editorconfig
.eslintrc.base.json chore: adding eslint rules to warn new object and function props (#35757) 2024-08-24 13:28:34 +05:30
.eslintrc.js fix: change appsmith alias (#35349) 2024-08-06 17:52:22 +03:00
.fork-ts-checkerrc fix: OOM issue (#31995) 2024-03-21 22:08:58 +05:30
.gitignore chore: update storybook (#32828) 2024-04-22 12:17:28 +03:00
.lintstagedrc.json
.nvmrc chore: update node version and appropriate git workflows (#31486) 2024-03-26 14:12:11 +03:00
.prettierignore
.prettierrc
.sentryclirc
.yarnrc.yml
build.sh chore: reverted client profiled build (#35306) 2024-07-31 15:23:08 +05:30
craco.build.config.js chore: Prefetch module apis in service worker (#34003) 2024-06-14 16:30:23 +05:30
craco.common.config.js chore: add node variable for ts type checking (#31996) 2024-03-25 13:11:53 +03:00
craco.dev.config.js chore: Prefetch module apis in service worker (#34003) 2024-06-14 16:30:23 +05:30
cypress_ci_custom.config.ts test: removed retries from all config files (#35750) 2024-08-20 11:20:35 +05:30
cypress_ci_hosted.config.ts test: removed retries from all config files (#35750) 2024-08-20 11:20:35 +05:30
cypress_ci.config.ts test: removed retries from all config files (#35750) 2024-08-20 11:20:35 +05:30
cypress-add-tags.js
cypress.config.ts test: removed retries from config file (#35284) 2024-08-16 19:01:28 +05:30
download-assets.js
jest.config.js chore: Rename wds packages (#35686) 2024-08-16 11:19:42 +05:30
package.json ci: Added code for PR comment results with repeat command (#35921) 2024-08-28 11:52:37 +05:30
README.md
README.old.md
start-caddy.sh chore: Remove deprecated start-https.sh message (#33856) 2024-05-31 07:18:57 +05:30
start-https.sh chore: Remove deprecated start-https.sh message (#33856) 2024-05-31 07:18:57 +05:30
tailwind.config.js
tsconfig.json chore: upgrade typescript to 5.4 (#35181) 2024-07-30 16:15:48 +02:00
tsconfig.path.json chore: rename old ADS package (#35517) 2024-08-08 15:55:00 +03:00
vercel.json
yarn.lock ci: Added code for PR comment results with repeat command (#35921) 2024-08-28 11:52:37 +05:30

Appsmith Client

This project was bootstrapped with Create React App.

For details on setting up your development machine, please refer to the Setup Guide