An open API service indexing awesome lists of open source software.

https://github.com/nimbolus/openstack-kolla-images

Pipeline for building custom OpenStack Kolla container images
https://github.com/nimbolus/openstack-kolla-images

kolla openstack

Last synced: 2 months ago
JSON representation

Pipeline for building custom OpenStack Kolla container images

Awesome Lists containing this project

README

        

# openstack-kolla-images

Pipeline for building custom [OpenStack Kolla](https://docs.openstack.org/kolla/latest/index.html) container images.

## Build

### Development

Prepare environment:
```sh
# create venv
python3 -m venv venv
# activate venv
source venv/bin/activate
# install requirements
pip install -r requirements.txt
# install kolla
pip install git+https://opendev.org/openstack/kolla@stable/2024.1
```

Build images:
```sh
kolla-build --config-file kolla-build.conf --profile custom
```

### GitHub Workflow

![build-images](https://github.com/nimbolus/openstack-kolla-images/actions/workflows/build.yml/badge.svg)

Go to [Actions](https://github.com/nimbolus/openstack-kolla-images/actions/workflows/build.yml) and click on `Run workflow`.

Images are pushed to [quay.io/nimbolus](https://quay.io/organization/nimbolus).

## Customization

### Add a Patch

1. Add patch file to `patches//.patch`.
2. Add patch file name to `patches//series` file.
3. Create additions archive in [kolla-build.conf](./kolla-build.conf):

```ini
[-additions-patches]
type = local
location = patches//
```

4. Install `patch` binary and apply the patches in [template_overrides.j2](./template_overrides.j2):

```python
{% set _packages_append = ['patch'] %}
{% block _footer %}
ADD additions-archive /
RUN bash -c 'while read patch; do patch -d /var/lib/kolla/venv/lib/python3.9/site-packages -p 1 -i /additions/$patch; done < /additions/series'
{% endblock %}
```