batmanneverdie opened a new issue, #14101:
URL: https://github.com/apache/dolphinscheduler/issues/14101

   ### Search before asking
   
   - [X] I had searched in the 
[issues](https://github.com/apache/dolphinscheduler/issues?q=is%3Aissue) and 
found no similar feature requirement.
   
   
   ### Description
   
   As we know, in product environment, many shell scripts will put on specific 
host. It's need DS worker could executes SSH successfully and run these shell 
scripts in target hosts.
   
   I think SSH connection is a Resource, just like DataSource or Resource 
Files, it should be authorized and be manageable.
   So, placing SSH connection on DataSource Management seems that a good 
choice, can use the existed management api and authorization system.
   
   For usage, we cloud add an option `TARGET SITE` on Shell plugin, if user 
choose this option, DS executes SSH connect firstly, and run the shell script 
that user input.
   
   Firstly, we could support two types for SSH connection:
   1. password
   2. private key file
   
   With `private key file`, user must pastes private key of target host on 
Resource Management File.
   
   `password` json param:
   ```json
   {
     "type": "SSH",
     "name": "[email protected]",
     "note": "test",
     "user": "devops",
     "host": "127.0.0.1",
     "port": 22,
     "connectType": "password",
     "password": "123456",
     "sendKeepAliveMessagesInterval": "300"
     "id": 1
   }
   ```
   
   `private key file` json param:
   ```json
   {
     "type": "SSH",
     "name": "[email protected]",
     "note": "test",
     "user": "devops",
     "host": "127.0.0.1",
     "port": 22,
     "connectType": "private-key",
     "privateKeyFileId": "1",
     "passPhrase": null,
     "sendKeepAliveMessagesInterval": "300"
     "id": 1
   }
   ```
   
   ### Are you willing to submit a PR?
   
   - [X] Yes I am willing to submit a PR!
   
   ### Code of Conduct
   
   - [X] I agree to follow this project's [Code of 
Conduct](https://www.apache.org/foundation/policies/conduct)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: 
[email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to