mirror of
				https://github.com/appleboy/drone-ssh.git
				synced 2025-10-29 00:51:15 +08:00 
			
		
		
		
	fix block channel.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
This commit is contained in:
		
							parent
							
								
									5b0ba436e2
								
							
						
					
					
						commit
						daaf2e2b25
					
				| @ -11,8 +11,6 @@ import ( | ||||
| 	"github.com/appleboy/easyssh-proxy" | ||||
| ) | ||||
| 
 | ||||
| var wg sync.WaitGroup | ||||
| 
 | ||||
| const ( | ||||
| 	missingHostOrUser    = "Error: missing server host or user" | ||||
| 	missingPasswordOrKey = "Error: can't connect without a private SSH key or password" | ||||
| @ -59,6 +57,7 @@ func (p Plugin) Exec() error { | ||||
| 		return fmt.Errorf(setPasswordandKey) | ||||
| 	} | ||||
| 
 | ||||
| 	wg := sync.WaitGroup{} | ||||
| 	wg.Add(len(p.Config.Host)) | ||||
| 	errChannel := make(chan error, 1) | ||||
| 	finished := make(chan bool, 1) | ||||
| @ -88,7 +87,7 @@ func (p Plugin) Exec() error { | ||||
| 			stdoutChan, stderrChan, doneChan, errChan, err := ssh.Stream(strings.Join(p.Config.Script, "\n"), p.Config.CommandTimeout) | ||||
| 			if err != nil { | ||||
| 				errChannel <- err | ||||
| 			} | ||||
| 			} else { | ||||
| 				// read from the output channel until the done signal is passed
 | ||||
| 				stillGoing := true | ||||
| 				isTimeout := true | ||||
| @ -113,6 +112,8 @@ func (p Plugin) Exec() error { | ||||
| 				if !isTimeout { | ||||
| 					errChannel <- fmt.Errorf(commandTimeOut) | ||||
| 				} | ||||
| 			} | ||||
| 
 | ||||
| 			wg.Done() | ||||
| 		}(host) | ||||
| 	} | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Bo-Yi Wu
						Bo-Yi Wu