-
Bug
-
Resolution: Fixed
-
Minor
-
Jenkins ver. 2.121.2
Google Compute Engine Plugin 1.0.4
According to the wiki (https://wiki.jenkins.io/display/JENKINS/Google+Compute+Engine+Plugin) the worker VM will have the "Startup Script" commands run on it before the worker is made available to jobs
Startup Script - defines a set of commands that should be run before making the instance available for running your jobs.
In practice it seems the "Startup Script" commands are still running on the VM when a job starts running on it.
I verified this by having some of the in the "Startup Script" section echo timestamps and logging to a file. The file was still being updated for a couple of minutes after the job started running on the VM.
In my case the "Startup script" is seeding the worker with some caches and I would need for the cache setup to be done before the worker is made available to Jobs.
Hi Arash,
You are correct in practice it is entirely possible that the worker can still be running your startup script while your jenkins build is happening.
We expect most consumers would want to run most of their code in the actual build, but based on your use case, perhaps we should implement a long-term solution.
In the meantime, here are some possible quick/temporary workarounds.
Let us know if you have any more questions.