aboutsummaryrefslogtreecommitdiff
path: root/docker/cyborg
AgeCommit message (Collapse)AuthorFilesLines
2026-07-06Migrate to pyproject.tomlMichal Nasiadka7-109/+0
[tool.setuptools.data-files] does not support recursive directory installation. The old setup.cfg [files] worked because PBR's FilesConfig.expand_globs() used os.walk() to expand docker/*, but this hook is not triggered by the pbr.build PEP-517 backend. Move docker/ into kolla/ and use [tool.setuptools.package-data] instead. Update kolla_worker._get_images_dir() to check the kolla package directory first so both editable and regular installs work. Change-Id: I4fc452c03740ef22ebbb4e8d0d86c4f4783e2d09 Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2026-06-24kolla-build: fix build-date LABEL invalidating Docker layer cacheMichal Nasiadka4-4/+4
The build-date label was rendered into a LABEL instruction on line 3 of every Dockerfile template, immediately after FROM. Because Docker invalidates the cache for a changed instruction and all subsequent layers, a date change caused a full rebuild of every image on each new calendar day, even when nothing else had changed. Fix this by removing build-date from the Dockerfile templates and applying it as a --label argument at build time via image.labels. Labels passed on the build command line are not part of the Dockerfile cache key, so the date is still recorded in the image metadata without affecting layer caching. Change-Id: I8ef0d85bab1a999a4d09f7cbf0c088ca00fdcf77 Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2026-04-28Remove httpd_setup calls from api containersMichal Nasiadka1-2/+0
We have dropped mod_wsgi support from services in [1]. [1]: https://review.opendev.org/c/openstack/kolla-ansible/+/982414 Change-Id: Ie5da8427706dfb74bad4e174c990355a6870114c Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2024-11-15Add mechanism for patching files in containersMichal Arbet4-0/+10
This patch adds a way to patch files in a Docker image built by Kolla. This is very useful for several reasons, specifically: - Custom modifications - The stable branch of some library has a fix but no pip package has been released - Eliminates the need to package your own pip packages - Eliminates the need to invent your own versioning to prevent upstream versioning - Eliminates the need to manage a pip server - In other words, it eliminates the need to get a wheel into the image and install it manually using any method not previously mentioned It is also highly desirable because, although Kolla can replace the source for a service with a custom URL for a tarball or its own Git repo, it cannot do this for dependencies pulled from pip. I would also like to point out that this is a feature with its own code path and works only if the user "inserts" a patch into the folder patches/docker-image/something.patch and creates an analogous series file for patch source code. Simply said, this code will never interfere with the upstream build process since this feature is not intended for use in upstream. It is rather meant for downstream users who know what they are doing. Now they just have an option to patch their images. Everything works on all layers of the Docker image and stores a report of applied patches which can then be seen in /etc. This mechanism is similar as debian patch quilt. Change-Id: I61d0790c5d4d070b7ea9e8c99c0a76ff5d22bf9d
2022-04-22adjust permissions on _extend_start files (part II)Marcin Juszkiewicz1-1/+1
Tim Shearer started it in 1d96a2bbe1b536b7d7f4cdbf55c6dabae6d058ae. Since all extend_start files are sourced rather than executed, the executable bits are now cleared throughout the project. Change-Id: Ia1797c32fc6a35f9f077c673abf4d8e16e51a760
2022-04-21flatten images a bitMarcin Juszkiewicz1-6/+5
As we have one type of images now some RUN calls could be merged so we will have less layers in resulting images. Change-Id: I5178c58fbd8c65efe825dc249c0f1368ef0fe8e0
2022-04-11Adjust permissions on _extend_start files.Tim Shearer1-1/+1
Explicitly set the permissions on the kolla-toolbox kolla_extend_start file. Also, since all extend_start files are sourced rather than executed, the executable bits are now cleared throughout the project. Change-Id: I5c2deb4a2e33575d57c852089f856a9acc6818d0
2022-04-11cyborg-agent: no need to check for install_typeMarcin Juszkiewicz1-4/+0
There is only source. Change-Id: I0d32808c73ab3292a8f213424118dfe2313d465b
2022-04-09docker: drop binary partsMarcin Juszkiewicz2-19/+2
Big patch drops all mentions of binary images support. Suggestions are welcome how to split it into parts or handle better. Change-Id: I5d5a46c6ce7734ceb8b844e17b43e359d7cac6e3
2021-06-28Clean up extra spacesjinyuanliu1-1/+1
I recently reviewed the code, although these errors are not important, they affect the code specification. Change-Id: Ie89f3628c9dfab683973d845a3812bccac9f5bb8
2020-11-20Remove footer block from intermediate imagesMark Goddard1-1/+0
Only the final image in a hierarchy should have the footer block. neutron-infoblox-ipam-agent image still has two footers because it inherits from the neutron-server image. We set the user to root at the beginning of that Dockerfile, so that headers and footers have the right context. Change-Id: I95e5bb5583be2a76e289749e8adfc303a4e7197a
2020-10-05Be strict about errors in startRadosław Piliszek1-8/+1
Make start.sh run with pipefail and nounset to avoid common errors in the start scripts and detect them early. Httpd code had to be patched to allow it to pass on Debuntu. Also fix the two missed applications of httpd to make sure all its path are covered. And also fix Horizon's ENABLE_ZAQAR - K-A does not use Zaqar. Yet another - Horizon's settings_bundle. :-) Finally, fix Neutron for Debuntu (KOLLA_LEGACY_IPTABLES). Change-Id: I39b8d78f6758df1f92b8b0d2c06ea99b038b843b Depends-On: https://review.opendev.org/711923
2020-08-10Refactor httpd install to base imageJames Kirsch1-21/+2
Refactor installing and initial setup of httpd and mod wsgi from individual services to base image. Change-Id: I651a55a9ebe258ef403d33de010a4dfb368a4021
2020-06-16cyborg-api: install proper WSGI for CentOSMarcin Juszkiewicz1-1/+1
Change-Id: Icc9d65c4ce22c959145a8d95fc6b823252659ddd
2020-05-21Make Cyborg buildable (again)Radosław Piliszek1-34/+4
This is done by removing the dependency on OPAE SDK. Additionally, cursive is no longer tried to be installed again in the agent image as it is already installed in base via regular requirements. Details in reno and the referenced bug report. Change-Id: Ib6a6f38efd9860851e558f13ee3bdedd8bb57903 Closes-bug: #1873744
2020-05-19Ensure the confs exists for cyborg and masakarigugug1-1/+3
1. When cyborg images build completed, the /etc/cyborg folder is not exits, and there is not confs, especially the api-paste.ini 2. When masakari images build completed, it's configs is missing, this ps add them together cyborg should keep consistence with the other images[1], this PS to add it. [1]: https://github.com/openstack/kolla/blob/master/docker/nova/nova-base/Dockerfile.j2#L137 Change-Id: I8a802617952f80cfb9f906398054ef6d17559589
2020-05-04Use Python 3 for mod_wsgi in cyborg and monasca on Debian/UbuntuMark Goddard1-1/+1
In Train kolla switched to Python 3 in Debian and Ubuntu source images. For services running under httpd with mod_wsgi, they should install libapache2-mod-wsgi-py3 rather than libapache2-mod-wsgi. This was done for most images, but cyborg and monasca were omitted. This change fixes that. Change-Id: I25cfa62dbf20490685617b4a4185bf95ab91725e Closes-Bug: #1873421
2020-04-16Merge "CentOS 8: Switch last mentions of yum to dnf"Zuul1-1/+1
2020-04-15CentOS 8: Switch last mentions of yum to dnfMark Goddard1-1/+1
Change-Id: I31e9742793cfb1abff9749083c9ce86000dae1af Partially-Implements: blueprint centos-rhel-8
2020-04-13Fix that the cyborg database init failed.ya.wang1-1/+1
The database init command should be 'cyborg-dbsync upgrade'. Change-Id: I4541c3c070ca70a2ee62f2a0e4ac5d70c57ca6e9 Closes-bug: #1872432
2020-03-01Add block labels to all DockerfilesChristian Berendt4-0/+8
Change-Id: I9692dda817ef134d647247431565e1b58cf9da41
2019-09-18Remove support for OracleLinuxMark Goddard1-4/+4
We have agreed to remove support for Oracle Linux. http://lists.openstack.org/pipermail/openstack-discuss/2019-June/006896.html Change-Id: I961dfba1aeef2c509ecdaf376dfe6928926ffb39 Depends-On: https://review.opendev.org/682858
2019-08-16Add pciutils package to cyborg-agent and zun-computeRadosław Piliszek1-0/+6
These run lspci and have this requirement in respective bindeps. CentOS images seem to have it installed but Ubuntu not. Ensure pciutils package is always installed. zun-compute seemed to work nonetheless but generated errors about being unable to take host inventory. cyborg-agent is unknown to work at all and deb is unbuildable. Change-Id: Iebc1f2c05c1f57c2b6f98ca9772f1ae9d9a420fa Signed-off-by: Radosław Piliszek <radoslaw.piliszek@gmail.com>
2019-06-03create missing apache2 directory on Debian/UbuntuMarcin Juszkiewicz1-0/+1
Ubuntu/source deployment of several images (horizon, placement-api, zun) failed with: + exec /usr/sbin/apache2 -DFOREGROUND apache2: Syntax error on line 80 of /etc/apache2/apache2.conf: DefaultRuntimeDir must be a valid directory, absolute or relative to ServerRoot Change-Id: Ie2a1077f7def0743f1403341985e2109aa490026
2019-03-27Add cyborg to kollaBai Yongjun7-0/+163
Because kolla not have cyborg so should add this. Implements: blueprint add-cyborg Change-Id: I497e67e3a754fccfd2ef5a82f13ccfaf890a6fcd