You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: doc/source/contributor/package-updates.rst
+45-7Lines changed: 45 additions & 7 deletions
Original file line number
Diff line number
Diff line change
@@ -2,10 +2,12 @@
2
2
Package and Container Updates
3
3
=============================
4
4
5
+
This section describes the Release Train process of creating new package repository snapshots and updating the container images to use these new packages. It includes instructions on the recommended way to test these updates, using the multinode test environment.
6
+
5
7
Preparations
6
8
============
7
9
8
-
1. Before building images, you should check for any outstanding PRs into the “base branch“. Below are the links for the Wallaby branches.
10
+
1. Before building images, you should check for any outstanding PRs into the earliest supported release. Below are the links for the Wallaby branches.
2. Follow the workflows documented `here <https://stackhpc.github.io/stackhpc-release-train/usage/content-howto/#update-package-repositories>`_. Sync the package repositories. Then, for each release:
23
+
24
+
* Make sure the nightly sync of package repositories has succeeded.
25
+
26
+
* Update the Kayobe package repository versions.
27
+
28
+
* Build and push Kolla container images.
29
+
30
+
* Open a draft PR into ``stackhpc/kayobe-config`` with the updated container image tags.
19
31
20
-
2. Follow the workflows documented `here <https://stackhpc.github.io/stackhpc-release-train/usage/content-howto/#update-package-repositories>`_. Sync the package repositories. Then, for each release: update the Kayobe package repository versions, build and push Kolla container images, open a draft PR with the updated container image tags. The rest of this document describes the stage "Test".
32
+
* Test.
33
+
34
+
* Review the PR. Once approved, promote the container images before then merging the PR.
35
+
36
+
The rest of this document describes the final "test" stage.
21
37
22
38
Testing
23
39
=======
24
40
25
41
The following steps describe the process to test the new package and container repositories. See the subsections beneath for further explanations.
26
42
27
-
1. Build two multinode environments for OVS and OVN, both on the "base branch".
43
+
1. Build two multinode environments for OVS and OVN, both on the earliest supported release.
28
44
29
45
2. Run tests on current package versions as a baseline.
30
46
@@ -53,14 +69,27 @@ There is a comprehensive guide to setting up a multinode environment with Terraf
53
69
54
70
* Remember to set different vxlan_vnis for each.
55
71
56
-
* Before running deploy-openstack.sh, run distro sync on each host to ensure you are using the same snapshots as in the release train.
72
+
* Before starting any tests, run ``dnf distro-sync`` on each host to ensure you are using the same snapshots as in the release train. You can do this using the following commands:
73
+
74
+
.. code-block:: console
75
+
76
+
kayobe seed host command run -b --command "dnf distro-sync"
77
+
kayobe overcloud host command run -b --command "dnf distro-sync"
57
78
58
79
* The tempest tests run automatically at the end of deploy-openstack.sh. If you have the time, it is worth fixing any failing tests you can so that there is greater coverage for the package updates. (Also remember to propose these fixes in the relevant repos where applicable.)
59
80
60
81
Upgrading host packages
61
82
-----------------------
62
83
63
-
Bump the snapshot versions in /etc/yum/repos.d with
84
+
Checkout the new kayobe-config branch (from the draft PR):
85
+
86
+
.. code-block:: console
87
+
88
+
cd $KAYOBE_CONFIG_ROOT
89
+
git fetch
90
+
git checkout <branch-name>
91
+
92
+
Bump the snapshot versions in /etc/yum/repos.d with:
64
93
65
94
.. code-block:: console
66
95
@@ -94,6 +123,14 @@ Perform a rolling reboot of hosts:
94
123
Upgrading containers within a release
95
124
-------------------------------------
96
125
126
+
Checkout the new kayobe-config branch (from the draft PR):
127
+
128
+
.. code-block:: console
129
+
130
+
cd $KAYOBE_CONFIG_ROOT
131
+
git fetch
132
+
git checkout <branch-name>
133
+
97
134
Deploy the services, once the new tags are set in the kayobe_config:
98
135
99
136
.. code-block:: console
@@ -103,7 +140,7 @@ Deploy the services, once the new tags are set in the kayobe_config:
103
140
Upgrading OpenStack to the next release in a multinode environment
As this is not a full production system, only a reduced number of steps need to be followed to upgrade to a new release. Below describes these steps, with Wallaby as the base branch:
143
+
As this is not a full production system, only a reduced number of steps need to be followed to upgrade to a new release. Below describes these steps, with ``stackhpc/wallaby`` as the starting branch:
107
144
108
145
.. code-block:: console
109
146
@@ -128,6 +165,7 @@ As this is not a full production system, only a reduced number of steps need to
128
165
kayobe overcloud service configuration generate --node-config-dir /tmp/kolla-xena-config
129
166
kayobe overcloud service configuration save --output-dir config/xena --node-config-dir /tmp/kolla-xena-config
130
167
kayobe overcloud host command run --command 'rm -rf /tmp/kolla-xena-config' --become
0 commit comments