Re: Persistent slave
As far as I know, this isn't possible. The basic slave architecture requires a constant, unbroken connection to the slave. If the connection is broken, the build is considered a failure. There might be ways to handle this in the slave classes, but if there is, I'm not aware of them. See this Stackoverflow Questionhttp://stackoverflow.com/questions/5543413/reconfigure-and-reboot-a-hudson-jenkins-slave-as-part-of-a-buildthat deals with the same issue. There are workarounds, but none quite as elegant as a rebootable slave. On Wednesday, August 7, 2013 7:18:17 AM UTC-7, Nickolay Rumyantsev wrote: Hi! I am looking for a way to create a new kind of a slave (or a channel or smth) for defining a set of testing machines (virtual and real) in my jenkins. It must meet the following requirements: 1. It should provide additional states like: rebooting, broken, available (and probably some others). The logic of selecting the current state exists already and is related to tha testing process. 2. The job that is being executed on such kind of the slave should be tolerant to slave reboot (until the specified timeout is exceeded) so the build will proceed after reboot normally. I had a look a the exiting plugins and it looks for me that there is no similar plugin for now. Can you please tell me if is it possible and if it is so suggest what plugin can I take as a base or which extension points should I look at to start development? Thanks, Nickolay -- You received this message because you are subscribed to the Google Groups Jenkins Developers group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
RE: Persistent slave
Hi Nickolay, For virtual you can somewhat accomplish this with the Cloudbees auto scaling plugin. You create a pool of virtual machines, and then assign one to your build which you can access via SSH. You can do whatever you want to to this VM as this VM is not the slave VM - although there are no additional states available. If you feel like coding then you could probably do something similar with the vSphere cloud plugin, or the labmanager plugin. I have a plan to do something similar for physical machines - have a pool - be able to obtain one (or more), control the OS to revert to a snapshot etc.. but have some other things I need to accomplish first, and the extra snapshots will require UCS hardware and some SAN - yet to be determined. /James From: jenkinsci-dev@googlegroups.com [mailto:jenkinsci-dev@googlegroups.com] On Behalf Of Jason Swager Sent: 07 August 2013 15:34 To: jenkinsci-dev@googlegroups.com Subject: Re: Persistent slave As far as I know, this isn't possible. The basic slave architecture requires a constant, unbroken connection to the slave. If the connection is broken, the build is considered a failure. There might be ways to handle this in the slave classes, but if there is, I'm not aware of them. See this Stackoverflow Questionhttp://stackoverflow.com/questions/5543413/reconfigure-and-reboot-a-hudson-jenkins-slave-as-part-of-a-build that deals with the same issue. There are workarounds, but none quite as elegant as a rebootable slave. On Wednesday, August 7, 2013 7:18:17 AM UTC-7, Nickolay Rumyantsev wrote: Hi! I am looking for a way to create a new kind of a slave (or a channel or smth) for defining a set of testing machines (virtual and real) in my jenkins. It must meet the following requirements: 1. It should provide additional states like: rebooting, broken, available (and probably some others). The logic of selecting the current state exists already and is related to tha testing process. 2. The job that is being executed on such kind of the slave should be tolerant to slave reboot (until the specified timeout is exceeded) so the build will proceed after reboot normally. I had a look a the exiting plugins and it looks for me that there is no similar plugin for now. Can you please tell me if is it possible and if it is so suggest what plugin can I take as a base or which extension points should I look at to start development? Thanks, Nickolay -- You received this message because you are subscribed to the Google Groups Jenkins Developers group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-dev+unsubscr...@googlegroups.commailto:jenkinsci-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- You received this message because you are subscribed to the Google Groups Jenkins Developers group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Persistent slave
Hello Nikolay, i think that i might have a plugin to do what you want. i tried to add this plugin awhile back but didnt get a positive reply for its addition. the plugin name is vmware-esx-plugin and i built this so that i could revert the vm to a specific state, before or after the build, so that i could do repetitive testing. i would still like to add this plugin to the jenkins repo but i havent really pushed it. my username is xterm-one and its location is xterm-one/vmware-esx-plugin. i also had a bank of hardware machines that i used it on to revert to a specific state using a bootable cd (such as hiren) to revert to a specific state using ghost. xterm-one On Wed, Aug 7, 2013 at 10:17 AM, James Nord (jnord) jn...@cisco.com wrote: Hi Nickolay, ** ** For virtual you can somewhat accomplish this with the Cloudbees auto scaling plugin. ** ** You create a pool of virtual machines, and then assign one to your build which you can access via SSH. You can do whatever you want to to this VM as this VM is not the slave VM – although there are no additional states available. If you feel like coding then you could probably do something similar with the vSphere cloud plugin, or the labmanager plugin. ** ** I have a plan to do something similar for physical machines – have a pool – be able to obtain one (or more), control the OS to revert to a snapshot etc.. but have some other things I need to accomplish first, and the extra snapshots will require UCS hardware and some SAN – yet to be determined.** ** ** ** /James ** ** *From:* jenkinsci-dev@googlegroups.com [mailto: jenkinsci-dev@googlegroups.com] *On Behalf Of *Jason Swager *Sent:* 07 August 2013 15:34 *To:* jenkinsci-dev@googlegroups.com *Subject:* Re: Persistent slave ** ** As far as I know, this isn't possible. The basic slave architecture requires a constant, unbroken connection to the slave. If the connection is broken, the build is considered a failure. There might be ways to handle this in the slave classes, but if there is, I'm not aware of them.* *** ** ** See this Stackoverflow Questionhttp://stackoverflow.com/questions/5543413/reconfigure-and-reboot-a-hudson-jenkins-slave-as-part-of-a-buildthat deals with the same issue. There are workarounds, but none quite as elegant as a rebootable slave. On Wednesday, August 7, 2013 7:18:17 AM UTC-7, Nickolay Rumyantsev wrote:* *** Hi! ** ** I am looking for a way to create a new kind of a slave (or a channel or smth) for defining a set of testing machines (virtual and real) in my jenkins. It must meet the following requirements: 1. It should provide additional states like: rebooting, broken, available (and probably some others). The logic of selecting the current state exists already and is related to tha testing process. 2. The job that is being executed on such kind of the slave should be tolerant to slave reboot (until the specified timeout is exceeded) so the build will proceed after reboot normally. I had a look a the exiting plugins and it looks for me that there is no similar plugin for now. ** ** Can you please tell me if is it possible and if it is so suggest what plugin can I take as a base or which extension points should I look at to start development? ** ** Thanks, Nickolay -- You received this message because you are subscribed to the Google Groups Jenkins Developers group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- You received this message because you are subscribed to the Google Groups Jenkins Developers group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- You received this message because you are subscribed to the Google Groups Jenkins Developers group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Persistent slave
nikolay, i forgot to mention that it does work across a reboot. it took me awhile but i finally figured it out with some help from a java guru (thanks jason) to get it to work. i really like this one because it works on demand and within a discrete step within the build process. xterm-one On Wed, Aug 7, 2013 at 10:43 AM, Phil Soliz phil.so...@gmail.com wrote: Hello Nikolay, i think that i might have a plugin to do what you want. i tried to add this plugin awhile back but didnt get a positive reply for its addition. the plugin name is vmware-esx-plugin and i built this so that i could revert the vm to a specific state, before or after the build, so that i could do repetitive testing. i would still like to add this plugin to the jenkins repo but i havent really pushed it. my username is xterm-one and its location is xterm-one/vmware-esx-plugin. i also had a bank of hardware machines that i used it on to revert to a specific state using a bootable cd (such as hiren) to revert to a specific state using ghost. xterm-one On Wed, Aug 7, 2013 at 10:17 AM, James Nord (jnord) jn...@cisco.comwrote: Hi Nickolay, ** ** For virtual you can somewhat accomplish this with the Cloudbees auto scaling plugin. ** ** You create a pool of virtual machines, and then assign one to your build which you can access via SSH. You can do whatever you want to to this VM as this VM is not the slave VM – although there are no additional states available. If you feel like coding then you could probably do something similar with the vSphere cloud plugin, or the labmanager plugin. ** ** I have a plan to do something similar for physical machines – have a pool – be able to obtain one (or more), control the OS to revert to a snapshot etc.. but have some other things I need to accomplish first, and the extra snapshots will require UCS hardware and some SAN – yet to be determined.* *** ** ** /James ** ** *From:* jenkinsci-dev@googlegroups.com [mailto: jenkinsci-dev@googlegroups.com] *On Behalf Of *Jason Swager *Sent:* 07 August 2013 15:34 *To:* jenkinsci-dev@googlegroups.com *Subject:* Re: Persistent slave ** ** As far as I know, this isn't possible. The basic slave architecture requires a constant, unbroken connection to the slave. If the connection is broken, the build is considered a failure. There might be ways to handle this in the slave classes, but if there is, I'm not aware of them. ** ** See this Stackoverflow Questionhttp://stackoverflow.com/questions/5543413/reconfigure-and-reboot-a-hudson-jenkins-slave-as-part-of-a-buildthat deals with the same issue. There are workarounds, but none quite as elegant as a rebootable slave. On Wednesday, August 7, 2013 7:18:17 AM UTC-7, Nickolay Rumyantsev wrote: Hi! ** ** I am looking for a way to create a new kind of a slave (or a channel or smth) for defining a set of testing machines (virtual and real) in my jenkins. It must meet the following requirements: 1. It should provide additional states like: rebooting, broken, available (and probably some others). The logic of selecting the current state exists already and is related to tha testing process. 2. The job that is being executed on such kind of the slave should be tolerant to slave reboot (until the specified timeout is exceeded) so the build will proceed after reboot normally. I had a look a the exiting plugins and it looks for me that there is no similar plugin for now. ** ** Can you please tell me if is it possible and if it is so suggest what plugin can I take as a base or which extension points should I look at to start development? ** ** Thanks, Nickolay -- You received this message because you are subscribed to the Google Groups Jenkins Developers group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- You received this message because you are subscribed to the Google Groups Jenkins Developers group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- You received this message because you are subscribed to the Google Groups Jenkins Developers group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: Persistent slave
I would love to see a plugin that allowed a slave connection that persisted across reboot. On Wed, Aug 7, 2013 at 8:45 AM, Phil Soliz phil.so...@gmail.com wrote: nikolay, i forgot to mention that it does work across a reboot. it took me awhile but i finally figured it out with some help from a java guru (thanks jason) to get it to work. i really like this one because it works on demand and within a discrete step within the build process. xterm-one On Wed, Aug 7, 2013 at 10:43 AM, Phil Soliz phil.so...@gmail.com wrote: Hello Nikolay, i think that i might have a plugin to do what you want. i tried to add this plugin awhile back but didnt get a positive reply for its addition. the plugin name is vmware-esx-plugin and i built this so that i could revert the vm to a specific state, before or after the build, so that i could do repetitive testing. i would still like to add this plugin to the jenkins repo but i havent really pushed it. my username is xterm-one and its location is xterm-one/vmware-esx-plugin. i also had a bank of hardware machines that i used it on to revert to a specific state using a bootable cd (such as hiren) to revert to a specific state using ghost. xterm-one On Wed, Aug 7, 2013 at 10:17 AM, James Nord (jnord) jn...@cisco.comwrote: Hi Nickolay, ** ** For virtual you can somewhat accomplish this with the Cloudbees auto scaling plugin. ** ** You create a pool of virtual machines, and then assign one to your build which you can access via SSH. You can do whatever you want to to this VM as this VM is not the slave VM – although there are no additional states available. If you feel like coding then you could probably do something similar with the vSphere cloud plugin, or the labmanager plugin. ** ** I have a plan to do something similar for physical machines – have a pool – be able to obtain one (or more), control the OS to revert to a snapshot etc.. but have some other things I need to accomplish first, and the extra snapshots will require UCS hardware and some SAN – yet to be determined. ** ** /James ** ** *From:* jenkinsci-dev@googlegroups.com [mailto: jenkinsci-dev@googlegroups.com] *On Behalf Of *Jason Swager *Sent:* 07 August 2013 15:34 *To:* jenkinsci-dev@googlegroups.com *Subject:* Re: Persistent slave ** ** As far as I know, this isn't possible. The basic slave architecture requires a constant, unbroken connection to the slave. If the connection is broken, the build is considered a failure. There might be ways to handle this in the slave classes, but if there is, I'm not aware of them. ** ** See this Stackoverflow Questionhttp://stackoverflow.com/questions/5543413/reconfigure-and-reboot-a-hudson-jenkins-slave-as-part-of-a-buildthat deals with the same issue. There are workarounds, but none quite as elegant as a rebootable slave. On Wednesday, August 7, 2013 7:18:17 AM UTC-7, Nickolay Rumyantsev wrote: Hi! ** ** I am looking for a way to create a new kind of a slave (or a channel or smth) for defining a set of testing machines (virtual and real) in my jenkins. It must meet the following requirements: 1. It should provide additional states like: rebooting, broken, available (and probably some others). The logic of selecting the current state exists already and is related to tha testing process. 2. The job that is being executed on such kind of the slave should be tolerant to slave reboot (until the specified timeout is exceeded) so the build will proceed after reboot normally. I had a look a the exiting plugins and it looks for me that there is no similar plugin for now. ** ** Can you please tell me if is it possible and if it is so suggest what plugin can I take as a base or which extension points should I look at to start development? ** ** Thanks, Nickolay -- You received this message because you are subscribed to the Google Groups Jenkins Developers group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- You received this message because you are subscribed to the Google Groups Jenkins Developers group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- You received this message because you are subscribed to the Google Groups Jenkins Developers group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out. -- Marc MacIntyre -- You received this message because you are subscribed to the Google Groups
Re: Persistent slave
Thanks for your replies! Unfortunately VMs are not in priority so the solution for real machines is needed first. Also the problem of host state reverting is out of scope for now. And what about Jenkins transport mechanizm - perhaps I could develop new implementation for hudson.remoting.VirtualChannel or something like this? At the moment I am not very familiar with Jenkins architecture. Regards, Nickolay среда, 7 августа 2013 г., 18:18:17 UTC+4 пользователь Nickolay Rumyantsev написал: Hi! I am looking for a way to create a new kind of a slave (or a channel or smth) for defining a set of testing machines (virtual and real) in my jenkins. It must meet the following requirements: 1. It should provide additional states like: rebooting, broken, available (and probably some others). The logic of selecting the current state exists already and is related to tha testing process. 2. The job that is being executed on such kind of the slave should be tolerant to slave reboot (until the specified timeout is exceeded) so the build will proceed after reboot normally. I had a look a the exiting plugins and it looks for me that there is no similar plugin for now. Can you please tell me if is it possible and if it is so suggest what plugin can I take as a base or which extension points should I look at to start development? Thanks, Nickolay -- You received this message because you are subscribed to the Google Groups Jenkins Developers group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.