Hi KB,
We're interested in the offer to have our CI stuff (Jenkins jobs) run on the CentOS CI infrastructure.
We have some initial questions, prior to testing things technically.
* Is there a document that describes the CentOS Jenkins setup (like provisioning of the slaves)?
* Is it possible for Gluster Community members to log into a Jenkins slave and troubleshoot specific failures?
eg if something fails a test, can one of the Community members log into the slave node to investigate (with root perms)
* We also want to be sure that our Community members (developers) will have access in the Jenkins interface to do stuff for our jobs.
eg create new jobs + editing existing ones (so our tests improve over time), rerunning failed jobs, and so on. We don't need full admin access, but we do need the ability to do stuff for our jobs
Regards and best wishes,
Justin Clift
Hi!
I'm not sub'd to the gluster-devel list, so unsure if my reply will make it there.
On 10/02/15 13:23, Justin Clift wrote:
Hi KB,
We're interested in the offer to have our CI stuff (Jenkins jobs) run on the CentOS CI infrastructure.
woo!
We have some initial questions, prior to testing things technically.
- Is there a document that describes the CentOS Jenkins setup (like provisioning of the slaves)?
Not at the moment, its something we're working on - however, there is quite a lot of flexibility there. If there is a specific setup you need, we can try to make it happen.
How are the tests run presently ? do you deploy testing environ, deploy jenkins-slave, run tests ? or are tests run from a central Jenkins instance that uses a remote transport ( like we use for some of the centos distro ci, where the job worker runs the entire suite over ssh ) ?
- Is it possible for Gluster Community members to log into a Jenkins slave and troubleshoot specific failures?
Short Answer : yes.
Long Answer : whe you setup with ci.centos.org, you can ask for any number of people to be added in ( ideally the list will be small, and only trusted people ). We store their ssh keys in the central management software ( duffy! ). When tests run through and pass : we teardown nodes right away. However, when tests fail - we can inject the ssh keys for the people, and they can then ssh in via the jump host. Now, if its for the baremetal nodes, ideally we'd want folks to clear out real quick ( it defaults to reinstall machine in 12 hrs, but can be extended ). Alternatively, we can rsync the machine contents into a container and ship that.
eg if something fails a test, can one of the Community members log into the slave node to investigate (with root perms)
yeah, the keys are setup for user root ( note that we reprovision the test environment after every test run finishes, and machine instances are only running while there are tests running ).
- We also want to be sure that our Community members (developers) will have access in the Jenkins interface to do stuff for our jobs.
Fabian is looking at Jenkins Job Builder, that should give people most of what they need - alternatively, we can help with plugin additions / setup etc as well. Its a multi tennant setup, so we just need to make sure everyone is being nice.
eg create new jobs + editing existing ones (so our tests improve over time), rerunning failed jobs, and so on. We don't need full admin access, but we do need the ability to do stuff for our jobs
sure, thats easy. I believe there are ways to also get admin rights per project ( which can then have jobs under it ) without needing admin on the entire jenkins setup. I've not used it in the past, but it might be something we can investigate.
Also, I know you mentioned needing VM's from other distro's etc - the Libvirt and libguestfs folks are also doing something around that, and we should be able to host these for you ( but would, as you can imagine, really prefer you testing with CentOS on baremetal )
regards,