aboutsummaryrefslogtreecommitdiff
path: root/docker/manila/manila-base
AgeCommit message (Collapse)AuthorFilesLines
2026-07-06Migrate to pyproject.tomlMichal Nasiadka3-59/+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>
2025-10-02Move repo enablement to respective rpm blocksMichal Nasiadka1-1/+2
Currently we are enabling repos irrespective of rpm/deb statement blocks and not failing in the method used if a repository is missing. Downside is - we might be producing one more layer, but it probably is a more logical approach. This is required for adding rpm support in repos.yaml that will also include failing on missing repositories. Change-Id: I5479c5c935760f00fe4cd307366f261deee3199f Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-08-29Remove RDO/DeloreanMichal Nasiadka1-1/+1
RDO has staffing problems and has decided to only support SLURP releases - let's drop reliance on that repository. Change-Id: I56f86a1c5262e3ee2bcbb52cae53c3b2655ed87f 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
2022-10-10Fix writable rootwrap/privsep configRadosław Piliszek1-1/+1
Fixes a hypothetical security issue related to privilege escalation via rootwrap/privsep. A potential vulnerable service could previously allow writes to its rootwrap/privsep config and thus allow for more commands to be run with root privileges via rootwrap/privsep. For a succesful attack, this would also require the service to allow to run arbitrary commands via rootwrap/privsep. Thus far, no such vulnerabilities have been reported and thus this fix is simply strengthening the container images against such an issue in the future. Change-Id: I92c81c77e6a16570a108cde8031f7977930fb02a Closes-Bug: #1874298
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-09docker: drop binary partsMarcin Juszkiewicz1-27/+5
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-04-13centos: enable repos where neededMarcin Juszkiewicz1-0/+1
With RDO use we did not disabled some repositories. This patch disable them and enable where needed. Change-Id: Ia9d537fe9c1ad54789d2bfb4027254fbb3defe7e
2020-03-01Add block labels to all DockerfilesChristian Berendt1-0/+2
Change-Id: I9692dda817ef134d647247431565e1b58cf9da41
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
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-01-20Fix manila-base dockerfile formatzhubingbing1-5/+4
source and binary alll need sudoers Change-Id: I190a0b8cbbb05460e1ff80e0e7a30d05c3392640
2017-01-17use static uid/gid in imagesSam Yaple1-5/+4
This centralizes all user and group creation into a single source. This will fix any current and furture uid/gid mismatches (such as with nova-libvirt). In the process, we also unify users between the distros in a standard way. The users in the following containers change from thier defaults: Ubuntu: _chrony user is now chrony Ubuntu: memcache user is now memcached All: qemu user is used for ownership and socket permissions All uid and gid numbers are customizable via kolla-build.conf Co-Authored-By: Kris Lindgren <klindgren@godaddy.com> Change-Id: I120f26ab0683dc87d69727c3df8d4707e52a4543 Partially-Implements: blueprint static-uid-gid
2017-01-05Remove footer block and variable in *-base imagesJeffrey Zhang1-1/+0
Change-Id: I39aa88489f744f779150695f3f55ef80d42e1c61 Closes-Bug: #1653247
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-29Change source with dot at extend_start filesEduardo Gonzalez1-1/+1
Is a best practice in Unix/Linux scripts to use dots instead of source command. Using dots will avoid issues with non BASH shells TrivialFix Change-Id: Ie6480a1954f853f79faffa093452715ebd9f7d90 Signed-off-by: Eduardo Gonzalez <dabarren@gmail.com>
2016-08-19Handle empty package list for install_packagesShaun Smekel1-2/+2
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-08-12Customizations for ManilaMauricio Lima1-14/+20
Change-Id: I3383f206b66d1af39273ec0564a53f1f7a592527 Partially-implements: blueprint third-party-plugin-support
2016-07-05Fix the overwrite sudoers file issueJeffrey Zhang1-2/+2
Change-Id: I4b109f7fdc3b8e49defed26979b04ca158842e98 Closes-Bug: #1598423
2016-05-26Update ubuntu dockerfiles for formattingSwapnil Kulkarni (coolsvap)1-2/+2
Change-Id: If4be00b937e14ec93443dcb7249cf17099d57cbe Closes-Bug: #1569417
2016-03-17Manila ubuntu binary containerMD NADEEM1-0/+1
manila-share is present in manila-common package. Change-Id: Ida231c0468b6ee3bb6a76fb9f475724abf95c1cb Closes-Bug:#1553199
2016-03-14Install openvswitch-switch in manilaMauricio Lima1-1/+22
Change-Id: I8277ad668f46d327807a01ceb96c2abb417f0e3d Closes-Bug:#1556271
2016-03-03Make Heka collect Manila logsMauricio Lima2-2/+17
Partially implements: blueprint heka Change-Id: I3fadbf29f5219a293b8b1114d192e27888be2c59
2016-02-24Add manila_sudoers fileMauricio Lima2-0/+5
All manila rootwrap calls are failing in source build because lack of sudoer setting Change-Id: I301fd7b6ff3721328828c2e0384f7e320146731b Partially-Implements: blueprint enable-manila-containers
2016-02-15Add manila perms to /var/cache/manilaMauricio Lima1-2/+2
Change-Id: I1ad667487ce1e0fbae340bed2233aacd4f895bce Parially-Implements: blueprint enable-manila-containers
2016-02-06Correct issue with virtualenv rootwrapSamYaple1-1/+2
Because we use rootwrap in a venv we need to update the exec_dirs. Without doing this *some* commands will break for various reasons that I won't get into in this review in detail. But this is required for neutron-l3-agent in a container + drop-root. Change-Id: I1a09f7188fdd501b7ce251d9f2fb0e5b10222142 Partially-Implements: blueprint drop-root
2016-02-02Fix manila permsSamYaple1-2/+2
Change-Id: I5b40de377ac0323d3253f58b49318d57da347d11 Parially-Implements: blueprint enable-manila-containers
2016-01-22Add binary support for Manila containerMarc Koderer1-2/+4
Change-Id: Iea77fa26c17e120b5c0487eca8a76972281ee99a Partially-Implements: blueprint enable-manila-containers
2016-01-18Add manila container (source only)Marc Koderer1-0/+21
Support manila as container. First step only supports building from source. Change-Id: I60bb67536c9afdb9f0532b3cdc2c400a68608003 Partially-Implements: blueprint enable-manila-containers