Project

General

Profile

Feature #13031

Updated by Loïc Dachary over 8 years ago

implement a task that builds Ceph packages and make it so they are consumed instead of the gitbuilder packages. The goal is to allow anyone with access to an OpenStack cluster to run a suite without requiring a build from the gitbuilders. 

 * change ~/.teuthology.yaml ceph_git_base_url to http://xxxx/ where http://xxxx/ceph http://xxxx/ceph-qa-suite http://xxxx/teuthology are mirrors of http://github.com/ceph except for the part being tested 
 * push a yaml file with the "package-build" tasks in a branch of http://xxxx/ceph-qa-suite so that it happens before the task that consume packages 

 * teuthology-run --build-packages would trigger such a task 
 * it would create the package for the designated os_type / os_version only, using the - packages role 
 * the ceph / install tasks are modified to use the packages role as a repository instead of the gitbuilder if --build-packages is set 

 Building the packages is done using  

 * "make-debs.sh":https://github.com/ceph/ceph/blob/master/make-debs.sh 
 * make-rpm.sh  

 In both cases the output is a repository containing the packages. 

 This adds ~15 minutes to a run. There are many ways to optimize this (sharing repository between jobs targeting the same branch, uploading to third party repositories, creating docker images). But these are not in the scope of this first implementation. 

Back