Branch: refs/heads/master Home: https://github.com/jenkinsci/ssh-slaves-plugin Commit: 7f219e767996f6b70645c1f3a27bfc3525cedcc5 https://github.com/jenkinsci/ssh-slaves-plugin/commit/7f219e767996f6b70645c1f3a27bfc3525cedcc5 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2014-11-04 (Tue, 04 Nov 2014)
Changed paths: M src/main/java/hudson/plugins/sshslaves/SSHLauncher.java Log Message: ----------- in case of a failure, try to report the exit code Commit: e3de05f51af64c806adaf00e81aa62345b5a943e https://github.com/jenkinsci/ssh-slaves-plugin/commit/e3de05f51af64c806adaf00e81aa62345b5a943e Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2014-11-04 (Tue, 04 Nov 2014) Changed paths: M pom.xml Log Message: ----------- Bumping up the base version. The immediate motivation is to get rid of 'Error:java: error: Exception thrown while constructing Processor object: com/google/common/collect/Multimap' problem, but this also lets us get rid of some of the reflection code in this plugin to work with earlier versions of trilead Commit: 1dabebd94da045561666008c78682b38320e92ea https://github.com/jenkinsci/ssh-slaves-plugin/commit/1dabebd94da045561666008c78682b38320e92ea Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2014-11-04 (Tue, 04 Nov 2014) Changed paths: M src/main/java/hudson/plugins/sshslaves/SSHLauncher.java Log Message: ----------- Get rid of compatibility code for ancient versions of Jenkins Commit: 7b2ebb7faf8f007ef65265a831487c0d178d20f3 https://github.com/jenkinsci/ssh-slaves-plugin/commit/7b2ebb7faf8f007ef65265a831487c0d178d20f3 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2014-11-04 (Tue, 04 Nov 2014) Changed paths: M src/main/java/hudson/plugins/sshslaves/SSHLauncher.java Log Message: ----------- This plugin is confused about how the channel shutdown processing should happen. Jenkins core calls afterDisconnect() from Channel.Listener.onClosed() (from the setChannel() method), and this plugin installs its own Channel.Listener that has the onClosed() method. The former gets called before the latter, and therefore some of the computation that was expected to happen in the latter wasn't properly taking place. I'm consolidating both pieces of the shutdown logic into a single function. In this commit, the order of those two pieces are preserved, and one can already see that something isn't quite right here. The next commit will clean up the afterDisconnect() function to make it do the proper thing Commit: b5f26ae3c685496ba942a7c18fc9659167293e43 https://github.com/jenkinsci/ssh-slaves-plugin/commit/b5f26ae3c685496ba942a7c18fc9659167293e43 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2014-11-04 (Tue, 04 Nov 2014) Changed paths: M src/main/java/hudson/plugins/sshslaves/SSHLauncher.java Log Message: ----------- Clean up the channel loss handling. Here, there are three layered connection-like things we need to think about. 1. SSH connection, which is a TCP/IP socket connection that multiplexes multiple "SSH channels" in it. 2. SSH channel, which is a logic sub-connection inside SSH connection that connects to the slave stdin/out and controls the process. 3. Remoting channel. afterDisconnect() gets called when the #3 is lost, and hopefully when that happens #1 and/or #2 are still active. For example, if the slave process has segfaulted, then SSH channel is still alive and it will bring the HotSpot crash dump of the JVM to the master and the exit code. We want to capture that as it's a valuable diagnostic information. We also want to know when the #1 is lost due to the underlying socket problem. This change doesn't address that, as the Connection class needs to expose this information. Commit: 8c8c5fb557ae6477271de4cb54bc968f5e1795bc https://github.com/jenkinsci/ssh-slaves-plugin/commit/8c8c5fb557ae6477271de4cb54bc968f5e1795bc Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2014-11-04 (Tue, 04 Nov 2014) Changed paths: M src/main/java/hudson/plugins/sshslaves/SSHLauncher.java Log Message: ----------- If the socket to SSH server is lost, report that. ... as opposed to the situation where the slave process has gotten a problem. When I kill -9 the per-session sshd process, I get something like this: ERROR: Socket connection to SSH server was lost java.io.IOException: Cannot read full block, EOF reached. at com.trilead.ssh2.crypto.cipher.CipherInputStream.getBlock(CipherInputStream.java:81) at com.trilead.ssh2.crypto.cipher.CipherInputStream.read(CipherInputStream.java:108) at com.trilead.ssh2.transport.TransportConnection.receiveMessage(TransportConnection.java:232) at com.trilead.ssh2.transport.TransportManager.receiveLoop(TransportManager.java:685) at com.trilead.ssh2.transport.TransportManager$1.run(TransportManager.java:481) at java.lang.Thread.run(Thread.java:722) So I still got some work to do to have it report the exception, not -1 from "int read()", but this is a progress. Commit: 2697898d3aa36ff095f0bd953a6d32aa187feca8 https://github.com/jenkinsci/ssh-slaves-plugin/commit/2697898d3aa36ff095f0bd953a6d32aa187feca8 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2014-11-04 (Tue, 04 Nov 2014) Changed paths: M src/main/java/hudson/plugins/sshslaves/SSHLauncher.java Log Message: ----------- Don't try to do SFTP stuff if the SSH connection is already lost. Commit: 33d99f9030b9218a2f4a30c361e0ab575e32d654 https://github.com/jenkinsci/ssh-slaves-plugin/commit/33d99f9030b9218a2f4a30c361e0ab575e32d654 Author: Kohsuke Kawaguchi <k...@kohsuke.org> Date: 2014-11-04 (Tue, 04 Nov 2014) Changed paths: M src/main/java/hudson/plugins/sshslaves/SSHLauncher.java Log Message: ----------- if the exit code is not known and the connection is lost, it's probably not that the slave is still running. Most likely it's just that the exit code didn't get reported before the connection is lost. Compare: https://github.com/jenkinsci/ssh-slaves-plugin/compare/50d2e9228c07...33d99f9030b9 -- You received this message because you are subscribed to the Google Groups "Jenkins Commits" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-commits+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.