-
Bug
-
Resolution: Unresolved
-
Major
-
None
-
CloudBees Jenkins Enterprise 2.32.3.2-rolling,
Amazon EC2 plugin 1.36
When Jenkins creates a new EC2 agent, it logins in through ssh and runs slave.jar before cloud-init has finished running the commands in User Data. This can cause builds to fail if they try to perform actions that require setup done by cloud-init. Jenkins should wait until cloud-init is finished before allowing the agent to be used for a build.
- duplicates
-
JENKINS-43064 ec2computerlauncher needs instance status as well as state
-
- Open
-
This may be what I am facing too. We have a deploy node that has an elastic IP assigned to it in the init script. The problem is that when the build pipeline goes to send a job to the deploy node, we get errors like:
hudson.remoting.RequestAbortedException: java.io.IOException: Unexpected termination of the channel
AND
ava.lang.InterruptedException
at java.lang.Object.wait(Native Method)
at hudson.remoting.Request.call(Request.java:147)
at hudson.remoting.Channel.call(Channel.java:829)
at hudson.EnvVars.getRemote(EnvVars.java:405)
at hudson.model.Computer.getEnvironment(Computer.java:1147)
at org.jenkinsci.plugins.workflow.support.steps.ExecutorStepExecution$PlaceholderTask$PlaceholderExecutable.run(ExecutorStepExecution.java:528)
at hudson.model.ResourceController.execute(ResourceController.java:98)
at hudson.model.Executor.run(Executor.java:405)
Finished: FAILURE
The only way to solve these problems is to reboot the Jenkins service. This somehow makes the deploy node work again.