HOWTO cut a release » History » Version 10
Nathan Cutler, 03/13/2016 10:18 AM
1 | 1 | Loïc Dachary | h3. Prepare the repository |
---|---|---|---|
2 | 1 | Loïc Dachary | |
3 | 1 | Loïc Dachary | Before publishing vX.Y.Z, the following files must be updated manually and committed to the corresponding stable branch: |
4 | 1 | Loïc Dachary | |
5 | 1 | Loïc Dachary | * configure.ac |
6 | 1 | Loïc Dachary | * debian/changelog |
7 | 1 | Loïc Dachary | |
8 | 1 | Loïc Dachary | h3. Obtain the private key to sign the packages |
9 | 1 | Loïc Dachary | |
10 | 9 | Loïc Dachary | 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). |
11 | 1 | Loïc Dachary | |
12 | 1 | Loïc Dachary | h3. Create the packages |
13 | 1 | Loïc Dachary | |
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 | 2 | Loïc Dachary | |
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 | 6 | Loïc Dachary | ceph-workbench --verbose release \ |
19 | 6 | Loïc Dachary | --version *version* \ |
20 | 7 | Loïc Dachary | --suite buildpackages/any \ |
21 | 6 | Loïc Dachary | --ceph *branch* \ |
22 | 6 | Loïc Dachary | --ceph-git-url http://github.com/ceph/ceph \ |
23 | 6 | Loïc Dachary | --filter *operating systems* |
24 | 6 | Loïc Dachary | |
25 | 1 | Loïc Dachary | For instance: |
26 | 6 | Loïc Dachary | |
27 | 6 | Loïc Dachary | ceph-workbench --verbose release \ |
28 | 6 | Loïc Dachary | --version 10.0.3 \ |
29 | 7 | Loïc Dachary | --suite buildpackages/any \ |
30 | 6 | Loïc Dachary | --ceph jewel \ |
31 | 6 | Loïc Dachary | --ceph-git-url http://github.com/ceph/ceph \ |
32 | 6 | Loïc Dachary | --filter 'ubuntu_14.04,centos_7.2' |
33 | 6 | Loïc Dachary | |
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 | 3 | Loïc Dachary | The URL to the repositories is displayed in the *ceph-workbench release* output. |
37 | 3 | Loïc Dachary | |
38 | 3 | Loïc Dachary | h3. merge the packages with the publicly available repository |
39 | 3 | Loïc Dachary | |
40 | 10 | Nathan Cutler | The packages are published to a *temporary* server and should be copied over to a *permanent* location. To do this, first login to the server hosting the permanent files, and then run the following: |
41 | 3 | Loïc Dachary | |
42 | 4 | Loïc Dachary | ceph-workbench --verbose release --merge-from *temporary* --merge-phase |
43 | 3 | Loïc Dachary | |
44 | 3 | Loïc Dachary | For instance: |
45 | 3 | Loïc Dachary | |
46 | 5 | Loïc Dachary | ceph-workbench --verbose release --merge-from http://167.114.246.148/ --merge-phase |