Code changed in jenkins
User: Oleg Nenashev
Path:
core/src/main/java/hudson/model/AbstractCIBase.java
core/src/main/java/hudson/model/Node.java
core/src/main/java/hudson/slaves/RetentionStrategy.java
core/src/main/java/jenkins/model/Jenkins.java
http://jenkins-ci.org/commit/jenkins/8cd6fd81a5fd9960a05bd485afec9c3976324cb5
Log:
JENKINS-43496 - Add handling of the null Node#createComputer() result. (#2922)
JENKINS-43496 - Add handling of the null Node#createComputer() result.
it is a follow-up to https://github.com/jenkinsci/jenkins/pull/2836#discussion_r110604865
De-facto many Cloud plugins return `null` in `Node#createLauncher()`, but it has never been documented.
In order to prevent possible API misusages in the future, I have added annotations and fixed handling of the extension point in `AbstractCIBase#updateComputer()` which may fail in the case of `null` or `RuntimeException` in the Node implementation.
JENKINS-43496 - Use ProtectedExternally to protect Node#createComputer()
JENKINS-43496 - Remove the erroneous Nonnull annotation after the feedback from @jglick
(cherry picked from commit bcf55ecd7f8a22046c5cb3c4c50016d936e5460c)
Code changed in jenkins
User: Oleg Nenashev
Path:
core/src/main/java/hudson/model/AbstractCIBase.java
core/src/main/java/hudson/model/Node.java
core/src/main/java/hudson/slaves/RetentionStrategy.java
core/src/main/java/jenkins/model/Jenkins.java
http://jenkins-ci.org/commit/jenkins/bcf55ecd7f8a22046c5cb3c4c50016d936e5460c
Log:
JENKINS-43496- Add handling of the null Node#createComputer() result. (#2922)JENKINS-43496- Add handling of the null Node#createComputer() result.it is a follow-up to https://github.com/jenkinsci/jenkins/pull/2836#discussion_r110604865
De-facto many Cloud plugins return `null` in `Node#createLauncher()`, but it has never been documented.
In order to prevent possible API misusages in the future, I have added annotations and fixed handling of the extension point in `AbstractCIBase#updateComputer()` which may fail in the case of `null` or `RuntimeException` in the Node implementation.
JENKINS-43496- Use ProtectedExternally to protect Node#createComputer()JENKINS-43496- Remove the erroneous Nonnull annotation after the feedback from @jglickJENKINS-43496- Fix typos noticed by @daniel-beck