[JIRA] (JENKINS-30183) Openstack Cloud Plugin does not wait until the user data script completes
Title: Message Title Joshua Harlow commented on JENKINS-30183 Re: Openstack Cloud Plugin does not wait until the user data script completes Ya, that idea is similar to what I'm doing at godaddy as well. Its not ideal, but basically using a shell script to add the user (and making sure adding the user last) will at least ensure jenkins can't login until the rest of the user script is finished... Best I've seen so far (though IMHO far from the best it could be). Add Comment This message was sent by Atlassian JIRA (v7.1.7#71011-sha1:2526d7c) -- You received this message because you are subscribed to the Google Groups "Jenkins Issues" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[JIRA] (JENKINS-30183) Openstack Cloud Plugin does not wait until the user data script completes
Title: Message Title Joshua Harlow commented on JENKINS-30183 Re: Openstack Cloud Plugin does not wait until the user data script completes Right, I've got another way to do this also, Where basically u make the user that is being used to log-in really late in the cloud-init process. Then the external ssh connection won't be possible until the final user adding has actually happened (which is then after all the other stuff I want to occur has finished). Its not perfect, and as being one of the cloud-init authors this is a known thing; and since this plug-in is not really tying itself to cloud-init tightly the solutions to it become a little bit harder (especially say with windows). Add Comment This message was sent by Atlassian JIRA (v7.1.7#71011-sha1:2526d7c) -- You received this message because you are subscribed to the Google Groups "Jenkins Issues" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[JIRA] (JENKINS-30183) Openstack Cloud Plugin does not wait until the user data script completes
Title: Message Title Joshua Harlow commented on JENKINS-30183 Re: Openstack Cloud Plugin does not wait until the user data script completes Do u know what image u were trying this on, a image with systemd? Knowing that will help me figure out how to adjust the module order in cloud-init to better suit what u want to do. Add Comment This message was sent by Atlassian JIRA (v7.1.7#71011-sha1:2526d7c) -- You received this message because you are subscribed to the Google Groups "Jenkins Issues" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[JIRA] (JENKINS-37167) Support openstack server metadata
Title: Message Title Joshua Harlow commented on JENKINS-37167 Re: Support openstack server metadata The following repo was where another folk and I were working on some minimal support for this: https://github.com/harlowja/openstack-cloud-plugin/commit/b9ea4d6 https://github.com/harlowja/openstack-cloud-plugin/commit/9f237b67 If people want to use that as a base (or not is fine also). Add Comment This message was sent by Atlassian JIRA (v7.1.7#71011-sha1:2526d7c) -- You received this message because you are subscribed to the Google Groups "Jenkins Issues" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[JIRA] (JENKINS-30183) Openstack Cloud Plugin does not wait until the user data script completes
Title: Message Title Joshua Harlow commented on JENKINS-30183 Re: Openstack Cloud Plugin does not wait until the user data script completes Let me see what I can dig up, part of this feels like a out of order system daemon configuration (where sshd is starting up before cloud-init); which may just be a packaging issue. Let me look that over and get back to u. Add Comment This message was sent by Atlassian JIRA (v7.1.7#71011-sha1:2526d7c) -- You received this message because you are subscribed to the Google Groups "Jenkins Issues" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[JIRA] (JENKINS-30183) Openstack Cloud Plugin does not wait until the user data script completes
Title: Message Title Joshua Harlow commented on JENKINS-30183 Re: Openstack Cloud Plugin does not wait until the user data script completes So the other option IMHO is to just depend on the JNLP or ssh and use that as the detection that if u can't access the server over SSH (I don't know much about JNLP) then the slave isn't going to work anyway so if u can't connect to it over those mechanisms after X period of time, then u might as well as declare the instance dead (because jenkins won't be able to use it anyway if those don't work). Add Comment This message was sent by Atlassian JIRA (v7.1.7#71011-sha1:2526d7c) -- You received this message because you are subscribed to the Google Groups "Jenkins Issues" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[JIRA] (JENKINS-37167) Support openstack server metadata
Title: Message Title Joshua Harlow created an issue Jenkins / JENKINS-37167 Support openstack server metadata Issue Type: Bug Assignee: Oliver Gondža Components: openstack-cloud-plugin Created: 2016/Aug/04 5:22 AM Priority: Minor Reporter: Joshua Harlow When booting an instance there is a typical ability to set metadata on that instance, which when booted the instance will have access to. This is used by various folks to pass in information into the instance (this info really isn't userdata but is used by at least godaddy for things like login_user for ldap and such...). $ nova help boot | grep -B1 -A2 meta_data.json --meta
[JIRA] (JENKINS-30183) Openstack Cloud Plugin does not wait until the user data script completes
Title: Message Title Joshua Harlow commented on JENKINS-30183 Re: Openstack Cloud Plugin does not wait until the user data script completes Agreed to the caveats, btw. I'm one of the cloud-init developers (one of the like three)! There is a feature that folks have used that is called multi-part messages into cloud-init, this would allow u to combine user provided scripts and jenkins provided ones. So that could handle having both scripts and ... http://cloudinit.readthedocs.io/en/latest/topics/format.html#mime-multi-part-archive So as for the question, its not running ahead of time, its installed via a cloud-init script then started by cloud-init as close to being done as it can be. The other option that I've seen (below in ansible) and I guess its similar to what jenkins is doing (when trying to setup the slave?) is wait for ssh to get started, and if that never happens, assume the server is dead. https://github.com/kubespray/kargo-cli/blob/master/src/kargo/cloud.py#L382 (for example), It'd be nice to pick a strategy, or just use the existing jenkins ssh retries and such (and/or make that more robust)? Add Comment This message was sent by Atlassian JIRA (v7.1.7#71011-sha1:2526d7c) -- You received this message because you are subscribed to the Google Groups "Jenkins Issues" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[JIRA] (JENKINS-30183) Openstack Cloud Plugin does not wait until the user data script completes
Title: Message Title Joshua Harlow commented on JENKINS-30183 Re: Openstack Cloud Plugin does not wait until the user data script completes So over at godaddy we are moving towards this plugin and our existing solution has been to spin-up a tiny webserver (either via apache) or via python via something like the following (this would happen as the last thing cloud-init via user data script does): $ python -m SimpleHTTPServer Then have the code that provisioned that server (ie, the openstack cloud plugin here), poll for a given period of time trying to access the above port, if the port doesn't become accessible after some configurable amount of time, then assume the server is busted (and the VM is dead); otherwise assume everything worked out. Another option (and I'm not really sure how/if it could work) is to take advvantage of the cloud-init feature to callback to a URL as the last thing that it does when running (ie after all the other user data scripts have ran): example @ https://github.com/number5/cloud-init/blob/master/doc/examples/cloud-config-phone-home.txt#L3 If that could be used to somehow post back to the jenkins master that the 'slave is now ready for usage' that'd be even better (less polling required). Anyone know which approach people would be ok with? Both would require a version of cloud-init installed (which is in most/all images), the later would be nice, but unsure if jenkins has such an ability in the first place (how does it know slaves are ready to be used?). Add Comment This message was sent by Atlassian JIRA (v7.1.7#71011-sha1:2526d7c)