ci-builder¶
The ci-builder Kayobe environment is used to build Kolla container images.
Images are built using package repositories in the StackHPC development Pulp
service, and pushed there once built.
Prerequisites¶
a CentOS Stream 8 or Ubuntu Focal 20.04 host
access to the Test Pulp server on SMS lab
Setup¶
Access the host via SSH.
Install package dependencies.
On CentOS:
sudo dnf install -y python3-virtualenv
On Ubuntu:
sudo apt update
sudo apt install -y python3-virtualenv
Clone the Kayobe and Kayobe configuration repositories (this one):
cd mkdir -p src pushd src git clone https://github.com/stackhpc/kayobe.git -b stackhpc/xena git clone https://github.com/stackhpc/stackhpc-kayobe-config -b stackhpc/xena kayobe-config popd
Create a virtual environment and install Kayobe:
cd
mkdir -p venvs
pushd venvs
virtualenv kayobe
source kayobe/bin/activate
pip install -U pip
pip install ../src/kayobe
popd
Add initial network configuration:
sudo ip l add breth1 type bridge
sudo ip l set breth1 up
sudo ip a add 192.168.33.3/24 dev breth1
sudo ip l add dummy1 type dummy
sudo ip l set dummy1 up
sudo ip l set dummy1 master breth1
Installation¶
Acquire the Ansible Vault password for this repository, and store a copy at
~/vault-pw.
The following commands install Kayobe and its dependencies, and prepare the Ansible control host.
export KAYOBE_VAULT_PASSWORD=$(cat ~/vault-pw)
pushd ~/venvs/kayobe
source bin/activate
popd
pushd ~/src/kayobe-config
source kayobe-env --environment ci-builder
kayobe control host bootstrap
Deployment¶
Next, configure the host OS & services.
kayobe seed host configure
Building images¶
At this point you are ready to build and push some container images.
kayobe seed container image build --push
kayobe overcloud container image build --push
The container images are tagged as xena-<datetime>.
To use the new images, edit
~/src/kayobe-config/etc/kayobe/kolla.yml to set the above
tag as the value of the kolla_openstack_release variable.