Project

General

Profile

HOWTO cut a release » History » Version 7

Loïc Dachary, 03/13/2016 09:45 AM

1 1 Loïc Dachary
h3. Prepare the repository
2
3
Before publishing vX.Y.Z, the following files must be updated manually and committed to the corresponding stable branch:
4
5
* configure.ac
6
* debian/changelog
7
8
h3. Obtain the private key to sign the packages
9
10
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.
11
12
h3. Create the packages
13
14 2 Loïc Dachary
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.
15
16 1 Loïc Dachary
For a given *branch*, the Ceph *version* packages, signed and placed into usable repositories for a given set of *operating systems* with:
17 6 Loïc Dachary
18
    ceph-workbench --verbose release \
19
       --version *version* \
20 7 Loïc Dachary
       --suite buildpackages/any \
21 6 Loïc Dachary
       --ceph *branch* \
22
       --ceph-git-url http://github.com/ceph/ceph \
23
       --filter *operating systems*
24
25 1 Loïc Dachary
For instance:
26 6 Loïc Dachary
27
    ceph-workbench --verbose release \
28
       --version 10.0.3 \
29 7 Loïc Dachary
       --suite buildpackages/any \
30 6 Loïc Dachary
       --ceph jewel \
31
       --ceph-git-url http://github.com/ceph/ceph \
32
       --filter 'ubuntu_14.04,centos_7.2'
33
34 1 Loïc Dachary
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.
35 3 Loïc Dachary
36
The URL to the repositories is displayed in the *ceph-workbench release* output.
37
38
h3. merge the packages with the publicly available repository
39
40
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:
41
42 4 Loïc Dachary
    ceph-workbench --verbose release --merge-from *temporary* --merge-phase
43 3 Loïc Dachary
44
For instance:
45
46 5 Loïc Dachary
    ceph-workbench --verbose release --merge-from http://167.114.246.148/ --merge-phase