aboutsummaryrefslogtreecommitdiff
path: root/docker/ceilometer/ceilometer-compute
AgeCommit message (Collapse)AuthorFilesLines
2026-07-06Migrate to pyproject.tomlMichal Nasiadka1-34/+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 Nasiadka1-1/+1
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>
2024-11-15Add mechanism for patching files in containersMichal Arbet1-0/+2
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
2024-02-26Remove calls to libvirt repoMichal Nasiadka1-2/+0
It does not exist in repos.yaml since [1]. [1]: Id585c7744ba130ad1dfc28138fb0f9e6eeae771d Change-Id: Ic74eba44fc6e5508976de24cf20a5039f3292731
2022-04-09docker: drop binary partsMarcin Juszkiewicz1-25/+9
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-03-23enable 'libvirt' repo for images with python*-libvirtMarcin Juszkiewicz1-0/+2
There are several images installing 'python3-libvirt' package. Which for Debian reside in 'libvirt' repo. So let's enable it where needed. Change-Id: I1c91d27f2578f5ca7c83c4747725b1d9371880b0
2020-04-15Remove support for CentOS 7Marcin Juszkiewicz1-9/+3
With the move to RHEL/CentOS 8 we no longer have Python 2 in our images so there is no need for checking which Python version (2.x or 3.x) is used inside of containers. We also no longer have to support yum as a value for distro_package_manager. Partially-Implements: blueprint centos-rhel-8 Change-Id: Ie45cf3465fedddbde7856961527421883ba3d5c9
2020-03-01Add block labels to all DockerfilesChristian Berendt1-0/+2
Change-Id: I9692dda817ef134d647247431565e1b58cf9da41
2020-01-29CentOS 8: Update packages in imagesMark Goddard1-3/+9
* Some further changes for python2 vs python3 packages * Allow rabbitmq 3.7.*, since a newer erlang is available * Switch from qemu-img-ev to qemu-img on CentOS 8 * bridge-utils no longer available on CentOS 8 * libvirt-daemon-driver-lxc no longer available on CentOS 8 * Mark some more images buildable for CentOS 8 Change-Id: Iaf5b68ff6d944ae730ca0b1d5832172c106a6c08 Partially-Implements: blueprint centos-rhel-8 Partially-Implements: blueprint centos-rhel-python-3
2019-06-07Merge "Debian/Ubuntu: more python3 packages for binary"Zuul1-1/+1
2019-06-06Debian/Ubuntu: more python3 packages for binaryMark Goddard1-1/+1
backport: Stein During the switch to Stein UCA, we did not switch all packages to python 3 for Debian/Ubuntu binary images. This change switches some more of those packages. Change-Id: I0bff21384d88ea678608392de2db1ba418c96665 Co-Authored-By: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
2019-06-06Debian/Ubuntu: move to Python 3 for source imagesMarcin Juszkiewicz1-1/+1
Commit 43b74ccc157c0b50138c3785ed91dab504895571 enabled use of Python 3 based packages but not switched to use Python 3. Some of images still contain Python 2. There are two reasons: - Ceph (ceph-common depends on Py2) - python3-ldappool on Ubuntu 18.04 In Ceph situation Py3 packages were added. For second one we can not do anything - Py2 dependency got dropped in Ubuntu 18.10 version. Removed neutron-server-plugin-networking-infoblox due to being not maintained. Once https://review.opendev.org/#/c/657578/ get merged someone may revert that part. Implements: blueprint debian-ubuntu-python3 Depends-on: Ie2a1077f7def0743f1403341985e2109aa490026 Change-Id: Ibfe0c2b8be98db56c61f74fb0247488ab3749ef4
2019-01-17Use base_package_typeAlex Schultz1-4/+4
This change updates the docker files to use base_package_type instead of doing specific distro checks for the rhel/deb generic cases. The base_distro is still available and is used when a specific distro needs a customization but if the differences are purely rpm vs deb, then the base_package_type can be used. Change-Id: I8d720bb185df65a0178061ccf20b1ab2265da2c5
2018-01-12Drop ceilometer client package requirementPradeep Kilambi1-2/+0
ceilometer api and client are dead in queens. lets drop this client. Change-Id: I1d2b31977f05c3a912d8704caa019c02c784556e
2017-08-15libvirt should be installed from OS rather than pipJeffrey Zhang1-5/+4
python-libvirt need be compiled with libvirt header. compiling it with different libvirt header may be failed. So better install python-libvirt from OS distro. Closes-Bug: #1707841 Change-Id: I0d7bf1576aaf24fc7c60f49923e37a6a1afe9a8e
2017-05-03Override image's meta info.Jawon Choo1-1/+1
centos based images have wrong label info, these changes fix own image's name and build-date. Change-Id: I1d13f8f386c8db12b5fbe5f8ecbbf9e3fbb4ba1c Closes-Bug: #1680341
2017-04-20Use LABEL instead of MAINTAINER (deprecated) in all Dockerfile.j2Chen1-1/+1
Use LABEL instruction instead of MAINTAINER (deprecated) instruc- tion as suggested by Docker's official dockerfile guide. docs.docker.com/engine/reference/builder/#maintainer-deprecated Closes-Bug: #1683652 Change-Id: Ie87a1ddf31aefcd0b623fd2837d78de420e76898
2017-04-04debian: enable all images enabled for UbuntuMarcin Juszkiewicz1-2/+2
Debian support is not maintained in Kolla so it got a bit behind Ubuntu one. This changeset enables Debian for all images. Jessie (even with backports) may be too old for some images though. Also unify distro check to ['debian', 'ubuntu'] to keep alphabetical order like it is done for RPM distributions. Partially-Implements: blueprint multiarch-and-arm64-containers Change-Id: I056233fbfa277e0e2360c07c3f80d9558c554357
2017-02-17Use install-pip macro in most source imagesChao Guo1-1/+6
1. Enable customization of pip packages in source branch of most images 2. All pip packages install uniformly through install-pip macro, user can easily customize his own pip command (For example using a mirror) Co-Authored-By: Mauricio Lima <mauriciolimab@gmail.com> Change-Id: If09582039f690fa4136e8f33200d5da15e092da7
2017-02-05Remove include_header and include_footer in all DockerfilesJeffrey Zhang1-1/+0
include_header and include_footer parameter is already removed, remove them in all Dockerfiles. Add missing footer block. Change-Id: I90da03eb9f95a3827361d5f5ede65fde7d6be2b3
2017-01-28Fix code format ceilometer_compute dockerfilezhubingbing1-11/+7
Change-Id: Ia35a39f34adbba66af1bd1983cfc54e5d165bb90
2016-11-17Fix missing libvirt python module in ceilometer-compute (v2)Javier Castillo Alcíbar1-1/+2
In debian/ubuntu based containers, package 'python-libvirt' must be installed in order to get rid of this ERROR: ceilometer.agent.manager ExtensionLoadError: No module named libvirt Change-Id: I41aae5e7e16d40a2b4ab8fb1b0657b436163896c Closes-Bug: #1642640
2016-11-03Remove Fedora supportChristian Berendt1-2/+2
Closes-bug: #1616387 Change-Id: Id97f88b9baa3d48d33ce120962450a374282d044
2016-09-13Add header blocks to all DockerfilesPaul Bourke1-0/+2
Change needed to add header blocks to all Dockerfiles, similar to the base. Use case is to easily run something before packages are installed, e.g. to COPY a local rpm in that can be added to the package list. Change-Id: I1bbfdf0b762da0a392aa8bf47781315b45377bee Closes-Bug: 1618969
2016-08-19Handle empty package list for install_packagesShaun Smekel1-1/+1
Currently if the install_packages macro is run with an empty package list, it will add a yum or apt-get command with no packages listed. This bug fix aims to omit this line when no packages have been given, or, the operator wants to use the "_override" / "_remove" functionality to disable all packages being installed in a Dockerfile. Co-Authored-By: Paul Bourke <paul.bourke@oracle.com> Change-Id: Ifaaaebfccc3adb0f2f68a35ac08e59378bc87fdb Closes-bug: 1612446
2016-07-25Customizations for ceilometerMartin Falatic1-11/+14
This patchset contains customization of Dockerfile of ceilometer containers Change-Id: Iee8db7e105fbd8c3d5c947dd3b7c5e0ca7c49b78 Partially-implements: blueprint third-party-plugin-support
2016-06-16Implement ceilometer ansible roleHui Kang1-1/+3
Change-Id: I13c50a78b2dc7c98b720a4b2e7161104213bd295 Implements: bp ansible-ceilometer
2016-05-26Update ubuntu dockerfiles for formattingSwapnil Kulkarni (coolsvap)1-2/+2
Change-Id: If4be00b937e14ec93443dcb7249cf17099d57cbe Closes-Bug: #1569417
2016-04-21Update ceilometer dockerfile for formattingSwapnil Kulkarni (coolsvap)1-1/+1
Change-Id: I1bb3436d9f702b9680eeb0efc4a648c94dd59cb4 Partial-Bug:#1569417
2016-04-14Merge "Fix missing libvirt python module in ceilometer-compute"Jenkins1-1/+18
2016-04-12Update Ceilometer dockerfiles for formattingSwapnil Kulkarni (coolsvap)1-1/+1
Change-Id: If5ead9a476a9fede105b328d7ba7422b45eae8a7 Partial-Bug:#1569417
2016-04-10Fix missing libvirt python module in ceilometer-computeHui Kang1-1/+18
Change-Id: I108397dbc86e44a81f82d6e9fce9ae2ad9d0976b Closes-Bug: #1565054
2016-02-10Ceilometer ubuntu binary containerMD NADEEM1-1/+7
Change-Id: I653b6b994de2f4d374d90a831d7a56eaff667404 Partially-Implements: blueprint binary-ubuntu
2016-01-15Remove old config-external.shWanlong Gao1-10/+0
TrivialFix Change-Id: Ib1923d8782699904cbc6a71d2f326d9c207d0005
2015-11-23Drop root for ceilometerSwapnil Kulkarni (coolsvap)1-0/+2
Updates to ensure commands run in the ceilometer containers are done as the 'ceilometer' user rather than root. Change-Id: Ic94b876a002d4413f2038c29ffdb275c68323065 Partially-Implements: blueprint drop-root
2015-11-23Remove hardcoded MAINTAINER in DockerfilesSwapnil Kulkarni (coolsvap)1-1/+1
Added new option in kolla-build.conf Change-Id: I45fe51966bcb59ea19d112281ba3d5a1ba091a56 Closes-Bug:#1514304
2015-10-06Bring Kolla inline with FHSSam Yaple1-1/+1
This brings Kolla images inline with FHS and should make finding locations of things more consistent and reliable with the linux world at large. Change-Id: Iece5b4da4bace0fb8b1f41a65ab2c852ec73e6f8 Closes-Bug: #1485742
2015-10-06Common start.shSam Yaple2-19/+5
The majority of the start.sh code is identical. This removes that duplicate code while still maintaining the ability to call code in a specific container. The start.sh is moved into /usr/local/bin/kolla_start in the container The extend_start.sh script is called by the kolla_start script at the location /usr/local/bin/kolla_extend_start . It always exists because we create a noop kolla_extend_start in the base directory. We override it with extend_start.sh in a specific image should we need to. Of note, the neutron-agents container is exempt from this new structure due to it being a fat container. Additionally, we fix the inconsistent permissions throughout. 644 for repo files and the scripts are set to 755 via a Docker RUN command to ensure someones local perm change won't break upstream containers. Change-Id: I7da8d19965463ad30ee522a71183e3f092e0d6ad Closes-Bug: #1501295
2015-09-28Merge "Implement a install_type and install_metatype"Jenkins1-1/+1
2015-09-28Implement a install_type and install_metatypeSteven Dake1-1/+1
This prepares for the RHEL OSP implementation by making the build tool convert all binary-* into an install_type of binary and * into an install_metatype variable substitution inside the Dockerfiles. Further binary-* is substituted as install_name to enable proper building only. Change-Id: Ib681b29176eb79a3cab12ec824313fdecb6e7a5f Partially-Implements: blueprint rhel-based-image-support
2015-09-27remove set_configsSam Yaple1-4/+0
Change-Id: I9bb0a1fac63cc326234b0f06b1e56b43e0753279 Partially-Implements: blueprint replace-config-external
2015-09-04Add 'rhel' for RPM distrosSteven Dake1-1/+1
Add 'rhel' to list for RPM based distros. Also sort the distro list for rpm packages for affected lines. Change-Id: Ied4cb3e9763d6c6359f314d16185383ac3e006ed Partially-Implements: blueprint rhel-based-image-support
2015-08-28Move docker_templates to docker dirSam Yaple3-0/+44
Updated build.py to reflect this change. Deprecate --template option and make it a noop. Change-Id: I7cd98d1ee684a4c64984a49597159868152683b2 Partially-Implements: blueprint remove-docker-dir
2015-05-15Restructure builds to allow more flexibilitySam Yaple3-34/+0
As a restructure, nothing is changed from the original behaviour and naming despite the file structure changing. The symlinks to build had to be updated generating lots of "deleted" and "new_file". The new structure is: docker/${base_distro}/${type}/${container} base_distro == centos, ubuntu, fedora, etc type == source, binary, rdo type rdo is a symlink to binary for backwards compatibility Two new flags are added to the build-all script to support the ability to support different base distros and a flag to support binary or source containers. There are several added folders that are empty to hold the directory structure for future containers of these types. To use a prefix other than centos-rdo- you can set PREFIX in the toplevel directory .buildconf file Change-Id: Ifc7bac0d827470f506c8b5c004a833da9ce13b90
2015-05-06Port to icehouseSteven Dake1-1/+1
This represents making build-docker-images --release build with the icehouse tag and causes docker-compsoe to pull from the icehouse tag. Partially-implements: blueprint port-kilo Change-Id: I66b2c39abc55c0f47152dd90e696fc46b9c58f50
2015-04-27Change the default shell to bashChen Zhiwei1-1/+1
Unify the shell to bash in all Kolla scripts. Change-Id: Ib9591b2f8f344eb88455c5e9b7ecf2164fb5960a Implements: blueprint use-bash-shell
2015-04-01Allow check_for_* functions to be consumed by wait_forMartin André1-1/+1
In order for the `check_for_*` functions to be consumed by `wait_for`, they should notify of their success but not exit. As a consequence, the previous behavior is restored by the fail_unless_* companion functions. With this change, it is now possible to do: wait_for 30 1 check_for_os_service_running keystone Change-Id: I16ddf8913027030c3ccb5487713d172904508fd6
2015-03-02Allow changing base imageMartin André1-1/+1
By changing the PREFIX variable in the .buildconf one is now able to build docker images from different bases. For example, add the following line to your .buildconf file to build CentOS based images: PREFIX=centos-rdo- Default base image is Fedora. For now only RH family is supported. Additionally, changing the namespace either with the NAMESPACE variable in .buildconf or via --namespace commandline option now changes the source namespace as well from the default kollaglue one. Implements: blueprint multi-baseos Co-Authored-By: Steven Dake <stdake@cisco.com> Change-Id: I3964cd2292789ea883a1f2d2738a5731a4fff49b
2015-01-19Cleanup required variables checks for all containersMartin André1-2/+2
This allows Kubernetes to reschedule containers in case a required variable is missing, for example when the Kubernetes pod is started before the service. The checks were cleaned using the following method: * remove duplicates * remove check for variables that get a default value in the same file * check for all variables used in the file * check for required services when it is obvious. Change-Id: Ib7e0530c410c61f828d36efe8925a20dc9781eab
2014-12-17Fix use of undefined KEYSTONE_SERVICE_HOST in CeilometerMartin André1-2/+2
This variable is never defined anywhere, and it is not one of the variable automatically exported by k8s or docker. It should be KEYSTONE_PUBLIC_SERVICE_HOST instead. Change-Id: Ib65b0189d0a767212fbb7eff4ce81717d492c3e2