aboutsummaryrefslogtreecommitdiff
path: root/docker/swift/swift-base/Dockerfile.j2
AgeCommit message (Collapse)AuthorFilesLines
2025-03-21Remove swift container imagesMichal Nasiadka1-48/+0
Change-Id: I05a96f27b47a0f87bcf435872dd08ec0927232e3
2025-02-06Install pycadf from pypi packageMichal Arbet1-1/+1
Previously, the `pycadf` package did not include configuration files, so they were manually installed from source. However, this was fixed in pycadf's upstream in [1], allowing us to rely on the package itself. Additionally, the `ceilometer_api_audit_map.conf` file has been removed, as it was dropped in pycadf's upstream commit here [2] [1] https://review.opendev.org/c/openstack/pycadf/+/936741 [2] https://review.opendev.org/c/openstack/pycadf/+/930971 Change-Id: I022aa4c403f08385beb83b5d0c81f8abb42eb4a7
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-04-24swift-base: fix rsync missing for rpm installsSven Kieske1-0/+1
Closes-Bug: 2062072 Change-Id: Id6e4bbe0aab2360c4e7e5f74fff6170bcc71080b Signed-off-by: Sven Kieske <kieske@osism.tech>
2024-01-17Fix openstack CADF audit maps and installationMichal Arbet1-0/+1
This patch fixes missing pycadf's audit maps for services and change the way how pycadf is installed. Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/905858 Closes-Bug: #2047941 Change-Id: I9b43d1a9990ad8aa7381ea81b0f2d692967be949
2023-11-27Swift: Remove unused rootwrapTakashi Kajinami1-5/+0
Swift does not use oslo.rootwrap. Thus the command and its config file is just useless. Change-Id: If4e346c2db841aad9b2ddac049dbbbc1ba5782ec
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-7/+6
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-09docker: drop binary partsMarcin Juszkiewicz1-34/+12
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-11-18Add Swift lock path in Swift containersStanislav Dmitriev1-2/+2
Swift-recon-cron requires rw access to the lock path specified in in object-server.conf file. Currently it doesn't exist in Swift containers Closes-Bug: #1926203 Change-Id: Id3f824b741a5aa98efc7162fb7d49657e86a2bee
2020-11-24swift: fix group membership in debuntu/binaryMark Goddard1-0/+5
The UCA packages seem to be removing the swift user from the kolla group. Explicitly add it after installation. Closes-Bug: #1905279 Change-Id: I51c7c6e2f520a582de0409025eb5d1a6da2952a2
2020-03-01Add block labels to all DockerfilesChristian Berendt1-0/+2
Change-Id: I9692dda817ef134d647247431565e1b58cf9da41
2019-10-01Install rsync in swift-base containers on Debian/UbuntuMark Goddard1-10/+16
This is used by the replicator services. Change-Id: Iad7ad20542a159469d95e990c20564633046b251 Closes-Bug: #1846207
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-12-12Remove old unused script from swift-basePaul Bourke1-1/+0
build-swift-ring.py is an ancient artifact from early Kolla days when Swift was first implemented. It's not documented nor recommended to be used. Change-Id: I98f567067e455344ed68774cb35c3f3db26be74d
2017-11-28Update swift for replication issuesJames McCarthy1-4/+6
There are corresponding ansible changes to go with these image changes - add nc to swift image, and create dir for lock files. nc allows for rsync replication to easily target {{ swift_rsync_port }} change the lock file location for swift user to access - see bug for more details. Change-Id: I78826aeee35601ff65cbe50932482ef2f68346ae Closes-Bug: #1733851
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-4/+4
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-28Fix swift dockerfilezhubingbing1-10/+9
* remove /var/log/swift * fix code format Change-Id: If10e668ed612df76c91e54947cf11910f7f1c707
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-12-26Remove unneeded oslo-rootwrap in swift-baseChao Guo1-6/+9
Oslo-rootwrap is not needed by swift, so remove it. Change-Id: Ic35ffabc7078fd66b2626ad5622a1585794f5d62
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-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 SwiftShaun Smekel1-19/+12
This patchset contains customization of Dockerfile of Swift containers. Change-Id: I69250c4d9f6cc3949c9b9b52ea4b0cc2aec0231e 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-06-04Make swift-base container build with debianBenedikt Trefzer1-1/+1
- add debian as base_system Change-Id: I1d0f1e5de819e8325243fa0b971c1eb7b83fb5b5 Partially-implements: blueprint build-debian
2016-05-26Update ubuntu dockerfiles for formattingSwapnil Kulkarni (coolsvap)1-2/+2
Change-Id: If4be00b937e14ec93443dcb7249cf17099d57cbe Closes-Bug: #1569417
2016-04-14Merge "Drop root for swift"Jenkins1-0/+14
2016-04-13Merge "Update Swift dockerfiles for formatting"Jenkins1-1/+2
2016-04-12Update Swift dockerfiles for formattingSwapnil Kulkarni (coolsvap)1-1/+2
Change-Id: Ib61f757e20aaec5941fd989ed5a4cd44f1424a80 Partial-Bug:#1569417
2016-04-12Create /var/cache/swift in source installationMichal Rostecki1-2/+2
Due to lack of /var/cache/swift directory, swift services are unable to access /var/cache/swift/container.recon file. Closes-Bug: 1569182 Change-Id: Ifc4763d40256e43f51728e1dd4b3986c4f0ba0fc
2016-04-11Drop root for swiftSwapnil Kulkarni (coolsvap)1-0/+14
Updates to ensure commands run in the swift containers are done as the 'swift' user rather than root. Change-Id: I8c5a12e24b9940200241dbe09d6bde8f1cc1cf05 Closes-Bug: #1553895 Co-Authored-By: Serguei Bezverkhi <sbezverk@cisco.com>
2016-02-22Merge "Swift ubuntu binary container"Jenkins1-0/+6
2016-02-22Swift ubuntu binary containerMD NADEEM1-0/+6
Change-Id: I4ead909143c0089d5b07568b27dc37222da95561 Partially-Implements: blueprint binary-ubuntu
2016-02-10Safely create directoriesMartin André1-1/+1
This prevents failure when the directory already exists. This commit fixes a failure in centos-binary because of a change in the RDO packaging, where the required directory is now created for us. Change-Id: Idd3e15802c3e3fd363e1295111ec12948d566781 Closes-Bug: #1543417
2016-02-02Fix Swift for multinode P+ACO deploymentQiu Yu1-1/+0
Current Swift playbook is based on the preassumption of AIO setup. However, if one goes with default multinode setup (ansible/inventory/multinode), it follows the P + ACO deployment model, which proxy-server runs on controller nodes where ACO (account/container/object services) run on storage nodes. It will break because swift proxy-server no longer has access (it shouldn't have) to /srv/node path. This change ensure disk mounting part only happens on storage node. It also moves chown from proxy-server Dockerfile to rsyncd because no matter with PACO, P+ACO or P+A+C+O model, rsyncd is always running on each storage node. Change-Id: I3aa20454902caa9c84d3901bb91e4e4c93ac5f34 Partially-Implements: blueprint swift-physical-disk Closes-Bug: #1537544
2016-01-28Fix swift build issueSamYaple1-0/+13
Swift updates and new deps are needed, here is one Closes-Bug: #1538377 Change-Id: Ibb890c73e462113c5aa29ab12637a9115bb51240
2015-12-27Fix pip install settingsSamYaple1-1/+1
There were some inconsistencies with pip install instructions thoughout Kolla. We fix those here. Additionally, we fix the virtualenv to properly use the site-packages on the host if a library is not available in the venv. Change-Id: Ib84d48e8826bb96060338b3fa0782620c98794a8 Related-Bug: #1524684 Closes-Bug: #1529434
2015-12-27Add missing contraintsSamYaple1-1/+1
There were some missing constraint caps on our pip installs TrivialFix Change-Id: I3d0af9556d08a9a0a99248a9992637d08fd3ad01
2015-11-27Source installation in virtualenvMichal Rostecki1-1/+1
Use virtualenv for installation of OpenStack projects and dependencies to avoid conflicts with Python libraries installed by non-OpenStack binary packages. Change-Id: I21ecd673b2e93335b1d3dd4e279e940c9d694c3c Implements: blueprint virtualenv
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-11-09Fix validate-all-maintainer.sh to look for Dockerfile.j2Angus Salkeld1-1/+1
And fix the fallout. Change-Id: Iccad3f4fdb0a6a7c14246df3408cae0425b833a5
2015-10-06Bring Kolla inline with FHSSam Yaple1-1/+2
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-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 all fail sections for UbuntuSam Yaple1-7/+2
Ubuntu binary is not supported and may never be. Installing from cloud-archive packaging is only for the current stable distros, Ubuntu does not have a Delorean type repo. We place a fail message in the base image to catch this and remove the messages throughout the project. An additional fail message is placed to catch all other things. Change-Id: Id2953f503ebd42226f6a08e75979ae56511c40f7 Implements: blueprint install-from-ubuntu
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