Project

General

Profile

HOWTO cut a release » History » Revision 9

Revision 8 (Loïc Dachary, 03/13/2016 09:45 AM) → Revision 9/12 (Loïc Dachary, 03/13/2016 09:55 AM)

h3. Prepare the repository 

 Before publishing vX.Y.Z, the following files must be updated manually and committed to the corresponding stable branch: 

 * configure.ac 
 * debian/changelog 

 h3. Obtain the private key to sign the packages 

 The private key used to sign the packages must be placed in *~/.ceph-workbench/gpg*. If there is no key, a new one will be created, which is convenient for testing but not for publishing. Someone consuming packages from a repository will expect all the packages it contains to be signed by the same key for verification purposes (see http://docs.ceph.com/docs/master/install/get-packages/#add-keys). purposes. 

 h3. Create the packages 

 The credentials for an OpenStack tenant must be placed in the ~/.ceph-workbench/openrc.sh file and will be used to create virtual machines to build and test the packages. 

 For a given *branch*, the Ceph *version* packages, signed and placed into usable repositories for a given set of *operating systems* with: 

     ceph-workbench --verbose release \ 
        --version *version* \ 
        --suite buildpackages/any \ 
        --ceph *branch* \ 
        --ceph-git-url http://github.com/ceph/ceph \ 
        --filter *operating systems* 

 For instance: 

     ceph-workbench --verbose release \ 
        --version 10.0.3 \ 
        --suite buildpackages/any \ 
        --ceph jewel \ 
        --ceph-git-url http://github.com/ceph/ceph \ 
        --filter 'ubuntu_14.04,centos_7.2' 

 will create packages for the *10.0.3* Ceph version from the *jewel* branch found in the http://github.com/ceph/ceph repository and place them in repositories for the *Ubuntu 14.04* and *CentOS 7.2* operating systems. 

 The URL to the repositories is displayed in the *ceph-workbench release* output. 

 h3. merge the packages with the publicly available repository 

 The packages are published to a *temporary* server and should be copied over to a *permanent* location. When logged in the server hosting the permanent files, run the following: 

     ceph-workbench --verbose release --merge-from *temporary* --merge-phase 

 For instance: 

     ceph-workbench --verbose release --merge-from http://167.114.246.148/ --merge-phase